<SEC-DOCUMENT>0001039399-21-000022.txt : 20210504
<SEC-HEADER>0001039399-21-000022.hdr.sgml : 20210504
<ACCEPTANCE-DATETIME>20210504165233
ACCESSION NUMBER:		0001039399-21-000022
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		86
CONFORMED PERIOD OF REPORT:	20210327
FILED AS OF DATE:		20210504
DATE AS OF CHANGE:		20210504

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			FORMFACTOR INC
		CENTRAL INDEX KEY:			0001039399
		STANDARD INDUSTRIAL CLASSIFICATION:	SEMICONDUCTORS & RELATED DEVICES [3674]
		IRS NUMBER:				133711155
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1225

	FILING VALUES:
		FORM TYPE:		10-Q
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	000-50307
		FILM NUMBER:		21889428

	BUSINESS ADDRESS:	
		STREET 1:		7005 SOUTHFRONT ROAD
		CITY:			LIVERMORE
		STATE:			CA
		ZIP:			94551
		BUSINESS PHONE:		9252904000

	MAIL ADDRESS:	
		STREET 1:		7005 SOUTHFRONT ROAD
		CITY:			LIVERMORE
		STATE:			CA
		ZIP:			94551
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>form-20210327.htm
<DESCRIPTION>10-Q
<TEXT>
<XBRL>
<?xml version="1.0" ?><!--XBRL Document Created with Wdesk from Workiva--><!--Copyright 2021 Workiva--><!--r:55eb200e-7c73-4bb5-9f15-e61280b04aa0,g:704d941e-e4b3-4657-882c-0679fd4e906c,d:9c89e3d57c9546d7826f58de281429d9--><html xmlns="http://www.w3.org/1999/xhtml" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:us-gaap="http://fasb.org/us-gaap/2020-01-31" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:currency="http://xbrl.sec.gov/currency/2020-01-31" xmlns:dei="http://xbrl.sec.gov/dei/2020-01-31" xmlns:form="http://www.formfactor.com/20210327" xmlns:country="http://xbrl.sec.gov/country/2020-01-31" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:srt="http://fasb.org/srt/2020-01-31" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xml:lang="en-US"><head><meta http-equiv="Content-Type" content="text/html"/>


<title>form-20210327</title></head><body><div style="display:none"><ix:header><ix:hidden><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" format="ixt:booleanfalse" name="dei:AmendmentFlag" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80L2ZyYWc6N2I0NjZiZWY2NWJmNGY2NzhmYjU1MDQ0MTJlYmY0NDIvdGFibGU6Yzk3YjQ1NmIzYzU3NDE5YTk2Y2JkOWFlYmQ4YWZjNTQvdGFibGVyYW5nZTpjOTdiNDU2YjNjNTc0MTlhOTZjYmQ5YWViZDhhZmM1NF8zLTEtMS0xLTA_5606cb61-84c9-4bfc-aca9-c050dc61a2cd">False</ix:nonNumeric><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="dei:EntityCentralIndexKey" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80L2ZyYWc6N2I0NjZiZWY2NWJmNGY2NzhmYjU1MDQ0MTJlYmY0NDIvdGFibGU6Yzk3YjQ1NmIzYzU3NDE5YTk2Y2JkOWFlYmQ4YWZjNTQvdGFibGVyYW5nZTpjOTdiNDU2YjNjNTc0MTlhOTZjYmQ5YWViZDhhZmM1NF80LTEtMS0xLTA_0a1c9bb2-e91a-49d7-9177-554301ae761d">0001039399</ix:nonNumeric><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" format="ixt:datemonthdayen" name="dei:CurrentFiscalYearEndDate" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80L2ZyYWc6N2I0NjZiZWY2NWJmNGY2NzhmYjU1MDQ0MTJlYmY0NDIvdGFibGU6Yzk3YjQ1NmIzYzU3NDE5YTk2Y2JkOWFlYmQ4YWZjNTQvdGFibGVyYW5nZTpjOTdiNDU2YjNjNTc0MTlhOTZjYmQ5YWViZDhhZmM1NF81LTEtMS0xLTA_2299c6ed-fa5e-4530-9364-a92444f6a724">December 25</ix:nonNumeric><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="dei:DocumentFiscalYearFocus" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80L2ZyYWc6N2I0NjZiZWY2NWJmNGY2NzhmYjU1MDQ0MTJlYmY0NDIvdGFibGU6Yzk3YjQ1NmIzYzU3NDE5YTk2Y2JkOWFlYmQ4YWZjNTQvdGFibGVyYW5nZTpjOTdiNDU2YjNjNTc0MTlhOTZjYmQ5YWViZDhhZmM1NF82LTEtMS0xLTA_60a9ce7c-2a32-44c9-94b8-7b3544fc3e0f">2021</ix:nonNumeric><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="dei:DocumentFiscalPeriodFocus" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80L2ZyYWc6N2I0NjZiZWY2NWJmNGY2NzhmYjU1MDQ0MTJlYmY0NDIvdGFibGU6Yzk3YjQ1NmIzYzU3NDE5YTk2Y2JkOWFlYmQ4YWZjNTQvdGFibGVyYW5nZTpjOTdiNDU2YjNjNTc0MTlhOTZjYmQ5YWViZDhhZmM1NF83LTEtMS0xLTA_a5103ac6-d718-4fac-8835-6b5723bc0c0c">Q1</ix:nonNumeric><ix:nonNumeric contextRef="i95ccedbfe61e47bfa57b17b6ebc66ed3_I20210327" format="ixt-sec:durmonth" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xMTYwL2ZyYWc6ZDU4ZjlmMTM5YzRhNDAwN2FkYWNmMDIwNzU3NmM5OGQvdGFibGU6MTUzNmFmMGI4ZmUyNDdlNDk4NjljNjhlYjAyMGYzNGUvdGFibGVyYW5nZToxNTM2YWYwYjhmZTI0N2U0OTg2OWM2OGViMDIwZjM0ZV8xLTEtMS0xLTM3Mg_76417845-a684-42c4-aa45-7d78a5d2034a">9</ix:nonNumeric><ix:nonNumeric contextRef="ia8e88a385c6347bc8a4d9e674e9ca6aa_I20210327" format="ixt-sec:duryear" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xMTYwL2ZyYWc6ZDU4ZjlmMTM5YzRhNDAwN2FkYWNmMDIwNzU3NmM5OGQvdGFibGU6MTUzNmFmMGI4ZmUyNDdlNDk4NjljNjhlYjAyMGYzNGUvdGFibGVyYW5nZToxNTM2YWYwYjhmZTI0N2U0OTg2OWM2OGViMDIwZjM0ZV8yLTEtMS0xLTM3Mg_ca48ee9a-9f53-49cd-a17e-ebc7947a0b4c">1</ix:nonNumeric><ix:nonNumeric contextRef="i2e3d772ffb614ae983ec9483968502d3_I20210327" xsi:nil="true" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xMTYwL2ZyYWc6ZDU4ZjlmMTM5YzRhNDAwN2FkYWNmMDIwNzU3NmM5OGQvdGFibGU6MTUzNmFmMGI4ZmUyNDdlNDk4NjljNjhlYjAyMGYzNGUvdGFibGVyYW5nZToxNTM2YWYwYjhmZTI0N2U0OTg2OWM2OGViMDIwZjM0ZV8zLTEtMS0xLTM3Mg_740fee38-e5ed-41c7-89a0-fe40469b28c3"></ix:nonNumeric></ix:hidden><ix:references xml:lang="en-US"><link:schemaRef xlink:type="simple" xlink:href="form-20210327.xsd"></link:schemaRef></ix:references><ix:resources><xbrli:context id="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="shares"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:context id="i42d84a843b47435586149a7c7a137464_I20210430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="usd"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:context id="i3228e9770d2f4580bee755ffe4247a1d_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6ff785e4fad44fa49d409ad053960f8e_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="usdPerShare"><xbrli:divide><xbrli:unitNumerator><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unitNumerator><xbrli:unitDenominator><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unitDenominator></xbrli:divide></xbrli:unit><xbrli:context id="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6cae11157f05483aa2be0dea51aecf10_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ieb26fac254654bf7bca7afa960c2d3a8_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0b15d00309954fbba558e9542f0721d2_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i04bb121199ae4cd69f50b4c605a1ff96_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i77e293278a644ee6b89b90c93275d810_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3f1bf6828a7940f4a13d6bb6704cf1eb_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i729f4638ab4e4511bd4ad2752c512e82_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0d11788f365441038bf9e977162280c1_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i13671f0a918f4bd48deb65cded0db074_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2eec7d0dc66b47db97e1ad7db6a10e09_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6f3e2c8af2304eafbee443016913a3e8_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i500f4312ae1c44caa47d6cdcc79ec327_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia9682d64c1fc451998455e633eab2a10_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4e6d5f6ac11b46d9a74b777fbb336ea6_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if41d69e944ef45a4b44eec3d4a223fb2_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib7bad9174c7c49609d91e6d5c3dfc9ae_I20191228"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</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="i4c6143c1609c4ab2bce37d037f54c330_I20191228"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id8f458398d8c43e088d130df56016bb6_I20191228"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</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="i44627f1e70d34766a2dbe07b15fb6950_I20191228"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</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="i7a3c798ab7664717ba65e058bdccb09a_I20191228"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</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="i1eeff05d49e94a6396339ea847351869_I20191228"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2019-12-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifb2d6dcf47c54abbb839c266c9cc4ee9_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8e0b808cf3604c4495edbf47e23dcbe3_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i18a16832376f439cb95baeee9a407ce6_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i011a585811394934834767c1c02a574f_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1aa740cb5cdb42f0823f14129a3efe75_I20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iedf25ec0f0c343d28e43f56ad6d7296d_I20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3b762e4947834ca39c189d5d1b398f14_I20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if7864453957e45bd925c6dd5aef3d902_I20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i594991f9cbb0403284090c5271d3ab3c_I20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i544b840724324a999b22494d0651898a_I20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2020-03-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="number"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:context id="i9feef629422b43d1a34d669ca728b358_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">form:IntelMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0db017a702d741ec90758394f990256c_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">form:IntelMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id7cd3ffae18748e8a7b7c82d53cda841_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">form:TaiwanSemiconductorManufacturingCoLTDMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i92fb9c092984474caaff0d4eb06e6da1_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i048871285eab482f8256c3c11121fb6d_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idf8294fdf189489284ad6181584d738a_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">form:MajorCustomer1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2b0d72da70f64e2baa56826b9993d786_D20191229-20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">form:MajorCustomer1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-12-26</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib5f0fa9fa6e546b4b723ae9c7eb7d887_D20191229-20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">form:MajorCustomer2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-12-26</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i59457e16636c4a7f800a5687585d0059_I20201019"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-10-19</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i13d981e1e3314322933fc54d4f48f8ad_D20201019-20201019"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-10-19</xbrli:startDate><xbrli:endDate>2020-10-19</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="millikelvin"><xbrli:measure>form:millikelvin</xbrli:measure></xbrli:unit><xbrli:context id="i50122fb52abb4650a343bcaf0eb341eb_I20201019"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-10-19</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4be5a37c2e7946ba905ae550ba42fc3c_I20201019"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-10-19</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7ba3f46d5d654736b039a7f7c8625257_D20201019-20201019"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-10-19</xbrli:startDate><xbrli:endDate>2020-10-19</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibe9a4e09fb1948b2b4e9027bd1d509a7_I20201019"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-10-19</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i660f2d27d2e8460b88e123b35c1c4a93_D20201019-20201019"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-10-19</xbrli:startDate><xbrli:endDate>2020-10-19</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i34afe745690d4ed7a3e161410ab24d3a_I20201019"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-10-19</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3619f7a8938a4046b1854b6d2b2b5896_D20201019-20201019"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-10-19</xbrli:startDate><xbrli:endDate>2020-10-19</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i77516486733640dab1fa1c83989f6557_I20201019"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-10-19</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i091c18f477db46a0be4b3906425aa30c_D20201019-20201019"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-10-19</xbrli:startDate><xbrli:endDate>2020-10-19</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if72cec7ca3b342c2b044431e1d621082_D20200730-20200730"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-07-30</xbrli:startDate><xbrli:endDate>2020-07-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-07-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ide7271024d174ef18742760227df34bd_I20200730"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-07-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="icb2bd5aa7a2f46d3b6a4d845d24c4fe5_D20200730-20200730"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-07-30</xbrli:startDate><xbrli:endDate>2020-07-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9e3864372b01457b867f40f1b99d5eb7_I20200730"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-07-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i238eedca206d433f933f027051460d35_D20200730-20200730"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-07-30</xbrli:startDate><xbrli:endDate>2020-07-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i766bb25c58e7483198d84fccbdf59f49_I20200730"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:InProcessResearchAndDevelopmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-07-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5fbe358d1fba4d15802003da152cabe5_I20191228"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i16d1465663cf4181b88e262e919eac34_I20191228"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib5ea062f3a074d648ba1fc7f52535528_D20191229-20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:FRTGmbHMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-12-26</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if1b23dd6933f4e889c4bb707850bc3be_D20191229-20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:FRTGmbHMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-12-26</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i766fc09da35840daa1048417dec5b977_D20191229-20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:FRTGmbHMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-12-26</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie80f2e2beded4af1a1f243fd65dc297b_D20191229-20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-12-26</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i82b5853bb17a42078ac2a333aeb2bed1_D20191229-20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-12-26</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i49fc19518314461bae583bb4132265b7_D20191229-20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-12-26</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i854854c15af54644af4470da171a27fd_D20191229-20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-12-26</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idb30b39ef576445dabd0e0388c84f91f_D20191229-20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-12-26</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8fd0f82133594c9bb92ea3b28d516c49_D20191229-20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-12-26</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6e37b691b2884ea28ca42c1218b34265_D20191229-20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-12-26</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7ca8f2c536d640d5bbafd309bf860ebe_D20191229-20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-12-26</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="icbf0d7ae2be742f18f08ffe120d98cd4_D20191229-20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-12-26</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i619d2f5efcc04d5787337604033fed50_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5dccd17e17534cb18864a0ff1fdc068f_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i48f3d16ebc514c6ebfdeca8868c3a584_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i145115c47a3c41fc84edd572945de66b_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idcc1dd5d0e904069951eb9d57880afab_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibec0ba8b66c74d83972365b461b6652f_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i68179e3b41cc4cb58d394c315b7e924d_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ieab7c0ab187d444c939db25d53fe740e_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7e83c001dbc94677a59ca9c262df771e_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id7ca4f9333334d088e8e33a90870e029_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="icc685b74f6e64416a016dc848f1e2524_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i440894a76a544ec0a0423734205ccc41_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifa0ef42d3e7c4271a02b2b18c7f35368_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">form:ExistingDevelopedTechnologiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iecc90425d12643a18c349e91c410c441_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">form:ExistingDevelopedTechnologiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifeb7f6443c044ccc90725224ce7d04c4_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic403daa15d7b47ce9cd798fbea57a31a_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7bedb36b172349739dacb4c49e918974_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ica1dbc1b460944e481d011c33fd38539_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3b84a14f3fb74e3cb977339c721078b8_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i85e30e59906a44f59ba583be2d3605a0_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4bc8eb7c629f4a2480195a0322e38b58_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:InProcessResearchAndDevelopmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5ce2f0f934674931972c4ef6efa9f7db_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:InProcessResearchAndDevelopmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0d1ea4fd763a46b5a3950b317c8ffaaf_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i58b6c2d1e0654942851c8b0deb45c8eb_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iefe5e641875c47c38077d9787aeda6d1_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i827c2859272f46d1af6b076a94267ac8_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i83382e7d2c8b4fabb2db33d207dfb366_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if17228f003c047758a39294ad5ba5d27_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8c9ac72027b144dcb23e62669dfd6195_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia598581b10a74d18bada3c46855fa52b_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic9f7e7ae347849c5b4e45cc4c1175466_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i145f335ea1fb463a8fc222c84ac94981_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i4f967f58aa1640f0b24801437f5fe982_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie3f11bbb05014b3a83067a076d211d97_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7885f9de272c46a38898e5b2b6cbeadd_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7144b8981c9b457781eb7907f050e5f1_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5a9be7cee5ec4fd9be9fa2e73eff96cf_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6247d6e9647449e09fed7cab29b95aae_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9419dfa20588499f825ec3b1b3519791_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibd52566f15684ea5b8dc2aa32c37242e_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i89ef81a9020d44ecb89f4714a761bab6_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i93d3ad69b7fb46b0a4b4748efdc779b4_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5e32dcdbcf724b128e337737e3527dab_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id9361ecbb0904810b3b071f12fda23ff_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifdb56f2ebd8041eaa7de2d28e2d7d79c_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0012f13b69834e1a862520ec5f44fed2_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7bea863d5baf4ad69c8218ba4f322c22_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib7dec811e88d4655b3519f0d1713cc26_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iac59b73a86d648b3aabedd57b6040b04_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9a62e1daa19e43afad5bc9f161785331_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if182b9d1747c4455ab48ec0820db5ba1_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ife64508f4e4e4720b46c14af9cd0f17b_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib02d06d5d50544ad87c8183e83c4cfd9_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia1f273bac97240f89bdc17a0e9c60164_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i199d8012cdfc45f880bde4f62358b733_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibfaae59a324f4a38ac0390337ca133de_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i48299e9912ad4118b96449675e783bd4_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib26f1c31bfed44a7b777060c7786edb4_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6fdc49bfe5094822b84e50642838474e_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i342792ee749a494da9570345238082da_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i13a31abba8c54278b30c172e00b5f42e_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifb9953b260ae40838020fbaa3bc54a54_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9346c5eb2b00412bbf91703e9e24c1b6_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="icaf47150e8b64314ac28c470e9ff45b2_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic8892fcf21d648e986b95d0d8a8b1378_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i66caef15586448fea9736569b0183519_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3951498c7cb949f3a19e0a998345885a_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="icbad4b8f1ec34b5285e9ac865f168400_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7c488846135d4af3aca64c3281bf9e94_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3ac46dbef9b2494a8f8bfe37eda43601_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib024db7786014f259e9a6aa19b39ccba_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iffdf278b8e9d4fdd83f87f976f008abc_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0fdfcd9576454a7684dea61db5dc6a09_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie90e314e5c2342c3a72103b23021b470_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iadd867276cb64488870fae3b03ce0f8d_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ieefc32debfcd4346a84c8cc01bdc0c19_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i69197b029fd647eab431903dd357b183_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i826c13f7503f4c4c8d9c8537ae0daeac_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if16a4006470e42feb581eabf235c1005_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibfec3676905d44fe9b156bb7dc84d2ed_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8fad041c01f84a6484a519e41ec2632f_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib780fe1f91bd4cedb3287f12f71bafa0_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i22041ee55dab44b39a48fdeeeec97a18_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if7ef9c26f9144425bfb963ca243ada33_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8708037d51394da19f4b3468b4ee0394_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if425e69f00aa4c44870f48a1c48e6b67_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie5589a6446ed4d7d8a4315ece55e84b4_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib1c2c291548b4506bf724e9fc37b3099_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iafd986cdb6c8480ba5063a9fa05344d4_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia931b26e563249a2bd0c872abc8e2fc7_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1438f4502fd947978ae632cfa778e6c4_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if5b5c415a9d1484185de57538d5cde01_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i20f414dff24540bba6daa384ee099878_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic7be3481579345b5b40f5d8520a0bfdf_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i72cf10ac46064eaba16e3a534a800ed4_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie1651b021d4f438f88707e0f1893cda3_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6990a2aeb0d84933a52a08cd48837eb6_D20191009-20191009"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:FRTMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-10-09</xbrli:startDate><xbrli:endDate>2019-10-09</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="eur"><xbrli:measure>iso4217:EUR</xbrli:measure></xbrli:unit><xbrli:context id="i2142b0f687f145299057abe4bd16bfa6_I20191009"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:FRTMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-10-09</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iadf2c82018d340d88770a032d367f21e_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i05cfd20b4db7493c86d0e3e642e17793_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i090130968f6b4bdd87a9441ed66661b2_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i05d42ee6296445d58b8575dcf4f29931_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1ff9acf7e74f462a9ac8974a00e30852_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PositionAxis">us-gaap:LongMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic926e43ea3034c338f2f1193109969da_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PositionAxis">us-gaap:ShortMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="jpy"><xbrli:measure>iso4217:JPY</xbrli:measure></xbrli:unit><xbrli:context id="i71bee5004c77402fbdca0a87dc12dc36_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:JPY</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PositionAxis">us-gaap:LongMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="krw"><xbrli:measure>iso4217:KRW</xbrli:measure></xbrli:unit><xbrli:context id="i30ce92d32c3a472db9133538bce6a64e_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:KRW</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PositionAxis">us-gaap:ShortMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="twd"><xbrli:measure>iso4217:TWD</xbrli:measure></xbrli:unit><xbrli:context id="ia07894792f2a45cd8ea42bf6a6de0ac9_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:TWD</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PositionAxis">us-gaap:ShortMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i29f6a021e44143acb33d3256fd42ec82_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i41f5ac4879b947f5882bf744929e0d10_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:OtherNonoperatingIncomeExpenseMember</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:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i855be42e47a54624a24482d75efbd5e5_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:OtherNonoperatingIncomeExpenseMember</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:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib9af7ff396304640b3355d49e0973eb0_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i858922598a254445afd9b4bdd08eb539_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i57c021cbe46b4d1d8417533c34518b6d_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i65f05b5fd52044c78876707c5ac38fb3_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iab97b4d4a8d54ea6a62c1cf1466a5227_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i95df57ad055943a493228cd16b7d5caf_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib12af2ac56894cf3990e1ac2d88df7f5_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idf711117c5ea427280ebc4526aec164a_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i104a76d3d05e44109700c142c3f865fb_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsNonrecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if72f6c99cda54fccb7c253fb2c11125a_I20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsNonrecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i748bc4ea3d26497da8a4181447809083_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib556c791343643a2b852ced1d6bc6139_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib8c908da8479474d8c6d00efea213bb8_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib5010210b88e428c83f009dd6f0543ed_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7ceedab9d7b3401c8673c48e522712cc_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i22c4b1b8854f4d74b3bc20b665ebe325_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i63feb9a9bc9048c18f431a4bcc814a1c_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0894b5d61f404b368720a7e152384e6e_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8f10ce656749423b840c7a310508812a_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if5590f5fa23f460786af19183085bf1f_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i83a1c50d70a44ceead8fd2607534264c_I20201026"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-10-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8fa8e4913bce435f98a1ae9ddcd3122e_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia53c8599a7ab4684940e34c0f363d1f8_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifb72ab70068e414e836189f85f45fc41_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">form:EquityIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9fc06d57d16a4e70b6f7c2ac52ee8fe0_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">form:EquityIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i159cea8e929f4890970bb676424e3f92_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">form:EquityIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie1e912506c2641f3bb7d9d4001735277_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">form:EquityIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i870d2a11d24245099f539695bcdec5d2_I20201226"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">form:EquityIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-26</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i387b92b675da43d5bf75aacb5290ba08_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">form:EquityIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i05ad810c16c74d3086a67614c59b1eab_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i316667ec5afd4cb7a006803d0a1e78e2_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib24b7fe86f6246ff9aa7cd150451397b_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6979a8e46f2c4ffc9073db33ed8d7c2d_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i65abe29b399a4adfa10e5b326d1b11f1_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if243d8f43a594989ae63b084745dfc7c_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6f47cb425bf440ec8f2aa4f802c7c3c8_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">form:PerformanceRestrictedStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iba459ce5a545461593f2866126f3c0c2_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">form:PerformanceRestrictedStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic2b8dfd7239b4fe2aef272a46ae68395_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic8ccc8b2e39946abb7359d53c4a5740e_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if0ea874df2bd442183f529523316f9f0_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:AutomobilesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id24d49a556714c20b711b5b1ebcdc56d_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:AutomobilesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i95ccedbfe61e47bfa57b17b6ebc66ed3_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"><us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2021-03-28</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia8e88a385c6347bc8a4d9e674e9ca6aa_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"><us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2021-12-26</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2e3d772ffb614ae983ec9483968502d3_I20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"><us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2023-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="segment"><xbrli:measure>form:segment</xbrli:measure></xbrli:unit><xbrli:context id="iae880a7f70674f27a92416741be5ae48_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic0ebe9afd5434ebb846f70dd43904b59_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie9fd9bd28cb34b25917766a905b820c1_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateAndOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1d1eb6004c3c4713b6b35cfd94353d5c_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8d11f1aa84f742768a9dbdf9a7d9d40e_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib46109fb73454d9ab19c49b1bebeba65_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateAndOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i17efef4193d241de9fd4b4aa18935ad2_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FoundryLogicProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7da0b92a26ea4b8385b19301bd68ef11_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FoundryLogicProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i06d0926b712243129dae4fa849a0a9ea_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FoundryLogicProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i37881b07144e4eea8645bdfdfe097bd5_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FoundryLogicProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="icaa7b11a536247a8bfa781f53efdf44a_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FoundryLogicProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3e9efdad47524942afd5e27a23964d32_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FoundryLogicProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia931704fac454b338df11d146e9a2eff_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:DRAMProductGroupMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5cfc6e078c914c129e8355f84fa7d747_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:DRAMProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibcae4145fd9c44f4b14aa1fe329fbf70_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:DRAMProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9795e20452c245b99fdd733af9bd9df2_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:DRAMProductGroupMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6a137e953a044d048cd400c5ecf42ff1_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:DRAMProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i39be1a79f7ae423f96574447b73ca5e2_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:DRAMProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8d01e67aa3a746e084149947068b844e_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FlashProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id191128bfc424119bcbf275f3e530dd4_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FlashProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5bd4e3f47e33489aaf04bc6b4e9b7f89_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FlashProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2a8b381a2ab94c69856c5a2eb280a578_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FlashProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i97fea9c8fd424e59b65b256f1c86d121_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FlashProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7bc781a5253844f3877a8b110caec858_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FlashProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic16eb573ec524ec7aaaf62f8d10f71e4_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:SystemsProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i89fe92f3430b474f83a23d49a6dbafc2_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:SystemsProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie705bdb63537443298fbcfcebd162058_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:SystemsProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9e79fb4d68724345b39e4b4bc4eb7c01_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:SystemsProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0679901700b2486f9c867b8e08b17728_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:SystemsProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4759480c0617414696c39f2e8a2409e7_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:SystemsProductGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibbdd3f9e212d4506a836ccb10f6e47b9_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id0718e19df664d0c8fb6766b10fd3625_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idfb6a757a29d49308db33aeaef39a6e3_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7ba9846df54147c19e3689b354c4abb7_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4688ad32de06414e9218db7ef867f100_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i339f727e2f4641348d09b357bc256118_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i958689f927964444a9005b48f3f1cd18_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i680008eb5c844aa2a28d1642a0f15c8c_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0f9adfb09b8f4ab6ac2ab399cbac9a3e_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i56062132d29440f281913bf199e1ea1c_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib36601237b6d4b7b966d7a550eccee3f_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iad4ec9255c74464982894b272350432b_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i47cf58e14027485da9f1806f52ec2d8d_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i508e3a788e944a4584d46e5d7b530c65_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7eaa7209f1e1493aa0245c1722e66c95_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3857b626483842778a520d0a41280961_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic122ffb3a2d64e3b969ffc2c161d5bf3_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3d85c4aaf19b4cb28ce656d9d253bb5a_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i032dbb7cc2674d6d8ff265a8c2185bd6_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i654d15775fc749c4b27da9372fb7a810_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic1accfe97f8f484d878b703e5c40005c_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i40fb54f5e8714d47832f057095fdd640_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i53ff53ba243f4f0cb599eb93c6dfc567_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib347dd7f3a714612afde16371c64f12f_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2b911ab200b84c358dddd7385b29bcdc_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9d1f83fb61604c4e86f699bb0e54187c_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i73700f90cb854d8b80da4f457c252a42_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie59a8f92898a4fa5a4601fc6fcaac1df_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0ddb8609fb5244fc9f93a64b8cea3bda_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibf4405a844544411add62f40112d7546_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia880de968dde4a95ab03f10c63cf1cef_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i80f0323a25944c2682fe3fc1ad38512c_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i16fe4cc5dcee471d8123f16d8d072680_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie42fe6855e514f228ed0815382321ca8_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i682500a8836e44ceb66954588f17cc72_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6a69df588ff04e19a7df5ca181bcb236_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i78f63a92bb95483188c38479b8516d32_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i53c327ad0e9e410eb9fb7fb5d0892431_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idd07a09dea0243c881f108ab527080a5_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i39a61f079ac545feb8809d5a842ee8b1_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i58b62a5b2e7e4947988950b5e020b47e_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4e660b622ae94bc58ee3278d89212060_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i015d7e55169940f9987b4c2e71a7aa16_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i09bb6bc9f3d04815b88619a3f2487ac9_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4982510ad45e40c2b807c2e86413bb07_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i64db8a68c3594e57a749760302f56fc8_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4492ef2d17954c888e705d4c19f02f29_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibdc0fcb7d49c4728b3cf73f327c1a0b4_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i14acbd2358a1447bab4e14686665e5bc_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6c0294018ff9442a960d081a3653d051_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i69c600524b554299a6aadf4d658f8ad6_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:JP</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i34afca68b1144a9183ea6da159a7050c_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:JP</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id487f2a1555d4150a10a17197475ff82_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:JP</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i41c8414a4aec489093402d27d3a92a91_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:JP</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0435f4eeea3e474183fcc858a4ba9981_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:JP</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1484b211f9c94f359a281ec877dcfd16_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:JP</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7205a4b7535c4d5881aa9c21967f2996_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">form:RestOfTheWorldMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iac2687805b774ca6955d6ca8c74cb17b_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">form:RestOfTheWorldMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1dcc3d38bd6a498f85e6e5bee8b57b2f_D20201227-20210327"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">form:RestOfTheWorldMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-27</xbrli:startDate><xbrli:endDate>2021-03-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie8fb6452425e4ec18b22ff7303ac3204_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">form:RestOfTheWorldMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i39aecdec956e40c096226f6afc35944c_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">form:RestOfTheWorldMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic64b1395f36741988775a19212150652_D20191229-20200328"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001039399</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">form:RestOfTheWorldMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-12-29</xbrli:startDate><xbrli:endDate>2020-03-28</xbrli:endDate></xbrli:period></xbrli:context></ix:resources></ix:header></div><div id="i9c89e3d57c9546d7826f58de281429d9_1"></div><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:8pt;margin-top:8pt;text-align:center"><span><br/></span></div><div style="margin-bottom:6pt;margin-top:8pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr style="height:3pt"><td colspan="3" style="border-bottom:1pt solid #000000;border-top:2pt solid #000000;padding:0 1pt"></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:14pt;font-weight:700;line-height:120%">UNITED STATES</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:14pt;font-weight:700;line-height:120%">SECURITIES AND EXCHANGE</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:14pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:14pt;font-weight:700;line-height:120%">COMMISSION</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Washington, D.C. 20549</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:16pt;font-weight:700;line-height:120%">Form&#160;<ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="dei:DocumentType" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN184Ng_e2663e93-326c-4fe6-9d9c-40156705ff4d">10-Q</ix:nonNumeric> </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6pt;font-weight:400;line-height:120%"> &#160;</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:120%">(Mark one)</span></div><div style="padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:11pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" format="ixt:booleantrue" name="dei:DocumentQuarterlyReport" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN18xMDQ_7fc00043-0f7c-45c1-b962-60fff5260ebd">&#9746;</ix:nonNumeric></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">&#160;&#160;&#160;&#160;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">QUARTERLY REPORT PURSUANT TO SECTION&#160;13 OR 15(d)&#160;OF THE SECURITIES EXCHANGE ACT OF 1934</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:120%">For the quarterly period ended <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" format="ixt:datemonthdayyearen" name="dei:DocumentPeriodEndDate" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN18yMjY_c7c80346-07a2-41ab-adb3-4415a69f1d7f">March 27, 2021</ix:nonNumeric> </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Or</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:11pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" format="ixt:booleanfalse" name="dei:DocumentTransitionReport" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN18yMzQ_f74f8e47-a166-4219-bba3-b5ec1e97eb01">&#9744;</ix:nonNumeric></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">&#160;&#160;&#160;&#160;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">TRANSITION REPORT PURSUANT TO SECTION&#160;13 OR 15(d)&#160;OF THE SECURITIES EXCHANGE ACT OF 1934</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:120%">For the transition period from&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;to&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:120%">Commission file number: <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="dei:EntityFileNumber" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN180MDk_1da4ef4b-8828-4f56-b145-80a3f6af8618">000-50307</ix:nonNumeric> </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:16pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="dei:EntityRegistrantName" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN180MTU_49cd29bd-6fd9-4857-98f9-7983f1860e22">FormFactor,&#160;Inc.</ix:nonNumeric> </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">(Exact name of registrant as specified in its charter)</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:46.993%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.565%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:47.142%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" format="ixt-sec:stateprovnameen" name="dei:EntityIncorporationStateCountryCode" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGFibGU6OTg2Yjg1ZTZjNTI2NDlmMmFhYjhlMTJkYzc1Y2E4MWYvdGFibGVyYW5nZTo5ODZiODVlNmM1MjY0OWYyYWFiOGUxMmRjNzVjYTgxZl8wLTAtMS0xLTA_79e613b6-c980-47e1-9668-57632298e141">Delaware</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="dei:EntityTaxIdentificationNumber" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGFibGU6OTg2Yjg1ZTZjNTI2NDlmMmFhYjhlMTJkYzc1Y2E4MWYvdGFibGVyYW5nZTo5ODZiODVlNmM1MjY0OWYyYWFiOGUxMmRjNzVjYTgxZl8wLTItMS0xLTA_e59b7f42-6a5b-446e-9e7e-ddbd605bb1a7">13-3711155</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(State or other jurisdiction of<br/>incorporation or organization)</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(I.R.S. Employer<br/>Identification No.)</span></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="dei:EntityAddressAddressLine1" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN180Nzg_b6a27744-cf9f-4885-b69d-68678d282f62">7005 Southfront Road</ix:nonNumeric>, <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="dei:EntityAddressCityOrTown" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN180ODI_b00848b1-1c4f-47d6-a9b6-43af80ca21a1">Livermore</ix:nonNumeric>, <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" format="ixt-sec:stateprovnameen" name="dei:EntityAddressStateOrProvince" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN180ODY_27caa2dc-5186-4a41-939c-d5d2340ff811">California</ix:nonNumeric> <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="dei:EntityAddressPostalZipCode" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN180ODk_616de8a6-ccf9-474b-a6de-8e4b9ae14e7c">94551</ix:nonNumeric> </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">(Address of principal executive offices, including zip code)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:120%">(<ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="dei:CityAreaCode" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN181NTc_7e4e06be-2e5f-488c-a3a8-409d58ee7ec6">925</ix:nonNumeric>) <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="dei:LocalPhoneNumber" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN181NjE_f52d7a12-0735-4a3a-adf4-f4722ef30363">290-4000</ix:nonNumeric> </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">(Registrant&#8217;s telephone number, including area code)</span></div><div style="text-align:center"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Securities registered pursuant to Section12(b) of the Act:</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:87.865%"><tr><td style="width:0.1%"></td><td style="width:2.462%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:30.014%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.462%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.392%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.038%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.392%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:36.340%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Title of each class</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Trading Symbol(s)</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Name of each exchange on which registered</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="dei:Security12bTitle" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGFibGU6NTIzNDIwZmRmZDcyNGQ0YTljZTI3NzQ5NjM5ZTM3YmYvdGFibGVyYW5nZTo1MjM0MjBmZGZkNzI0ZDRhOWNlMjc3NDk2MzllMzdiZl8xLTEtMS0xLTA_38664e26-e9ff-47fc-8ced-2f7cabe30ebe">Common stock, $0.001 par value</ix:nonNumeric></span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="dei:TradingSymbol" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGFibGU6NTIzNDIwZmRmZDcyNGQ0YTljZTI3NzQ5NjM5ZTM3YmYvdGFibGVyYW5nZTo1MjM0MjBmZGZkNzI0ZDRhOWNlMjc3NDk2MzllMzdiZl8xLTQtMS0xLTA_e7fea3df-b0d3-4e89-91d1-efcf33299098">FORM</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" format="ixt-sec:exchnameen" name="dei:SecurityExchangeName" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGFibGU6NTIzNDIwZmRmZDcyNGQ0YTljZTI3NzQ5NjM5ZTM3YmYvdGFibGVyYW5nZTo1MjM0MjBmZGZkNzI0ZDRhOWNlMjc3NDk2MzllMzdiZl8xLTYtMS0xLTA_ec1d9e2b-5fea-4817-941e-a78c5068b478">Nasdaq Global Market</ix:nonNumeric></span></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">______________________________________</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant (1)&#160;has filed all reports required to be filed by Section&#160;13 or 15(d)&#160;of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2)&#160;has been subject to such filing requirements for the past 90 days.&#160;&#160;&#160;<ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="dei:EntityCurrentReportingStatus" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN18xMDY3_be367214-e04a-4c2d-a8df-50735052adbb">Yes</ix:nonNumeric> </span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:11pt;font-weight:700;line-height:120%">&#9746;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;&#160;No&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#9744;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant submitted electronically every Interactive Data File required to be submitted pursuant to Rule&#160;405 of the Regulation S-T (&#167;232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).&#160;&#160;<ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="dei:EntityInteractiveDataCurrent" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN18xMzkw_30082900-f4ca-406e-9d30-d12c519d79c6">Yes</ix:nonNumeric>&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:11pt;font-weight:700;line-height:120%">&#9746;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;&#160;No </span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#9744;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">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&#160;12b-2 of the Exchange Act. (Check one):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:61.257%"><tr><td style="width:1.0%"></td><td style="width:44.007%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.911%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:44.007%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.675%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="dei:EntityFilerCategory" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGFibGU6ZmI5MGRhYjljYjVjNDk0YWI1NGY3NzAwNTA2MDE2NjcvdGFibGVyYW5nZTpmYjkwZGFiOWNiNWM0OTRhYjU0Zjc3MDA1MDYwMTY2N18wLTAtMS0xLTA_711770fd-b091-42bd-aa7e-7c68684823c0">Large Accelerated Filer</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#9746;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accelerated&#160;Filer</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#9744;</span></td></tr><tr style="height:8pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Non-accelerated&#160;Filer</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#9744;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Smaller&#160;Reporting&#160;Company</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" format="ixt:booleanfalse" name="dei:EntitySmallBusiness" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGFibGU6ZmI5MGRhYjljYjVjNDk0YWI1NGY3NzAwNTA2MDE2NjcvdGFibGVyYW5nZTpmYjkwZGFiOWNiNWM0OTRhYjU0Zjc3MDA1MDYwMTY2N18yLTMtMS0xLTA_dd7f6513-1e0f-4ea7-9dd5-a12f8065f8c9">&#9744;</ix:nonNumeric></span></td></tr><tr style="height:6pt"><td colspan="9" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Emerging Growth&#160;Company</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" format="ixt:booleanfalse" name="dei:EntityEmergingGrowthCompany" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGFibGU6ZmI5MGRhYjljYjVjNDk0YWI1NGY3NzAwNTA2MDE2NjcvdGFibGVyYW5nZTpmYjkwZGFiOWNiNWM0OTRhYjU0Zjc3MDA1MDYwMTY2N180LTEtMS0xLTA_47233a98-5b42-484b-894b-181e6a2b8eb5">&#9744;</ix:nonNumeric></span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6pt;font-weight:400;line-height:120%"> </span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">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. &#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#9744;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"> &#160;&#160;</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant is a shell company (as defined in Rule&#160;12b-2 of the Exchange Act).&#160;&#160;Yes&#160;</span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" format="ixt:booleanfalse" name="dei:EntityShellCompany" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN18yMTQy_9848577f-3ba6-4eed-80b6-19e5ff6ebf03">&#9744;</ix:nonNumeric></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"> &#160;No </span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#9746;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">As of April&#160;30, 2021, <ix:nonFraction unitRef="shares" contextRef="i42d84a843b47435586149a7c7a137464_I20210430" decimals="INF" format="ixt:numdotdecimal" name="dei:EntityCommonStockSharesOutstanding" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN18yMTYz_91f91b8d-db0b-42c3-8ed6-9ede23ced05a">77,622,717</ix:nonFraction> shares of the registrant&#8217;s common stock, par value $0.001 per share, were outstanding.</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr style="height:3pt"><td colspan="3" style="border-bottom:2pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"></td></tr></table></div><div style="text-indent:18pt"><span><br/></span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div><div id="i9c89e3d57c9546d7826f58de281429d9_7"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">FORMFACTOR,&#160;INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">FORM&#160;10-Q FOR THE QUARTERLY PERIOD ENDED MARCH 27, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">INDEX</span></div><div style="text-align:center"><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.852%"><tr><td style="width:1.0%"></td><td style="width:11.455%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:79.993%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.252%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_10">Part&#160;I.</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_10">Financial Information</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_13">Item 1.</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_10">Financial Statements (Unaudited):</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:6.75pt"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_16">Condensed Consolidated Balance Sheets as of </a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_16">March</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_16"> 2</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_16">7</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_16">, 202</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_16">1</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_16"> and December 2</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_16">6</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_16">, 20</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_16">2</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_16">0</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_16">3</a></span></div></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:6.75pt"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_19">Condensed Consolidated Statements of Income for the three </a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_19">months ended </a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_19">March</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_19"> 2</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_19">7</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_19">, 202</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_19">1</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_19"> and </a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_19">March</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_19"> 28, 20</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_19">20</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_19">4</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:6.75pt"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_22">Condensed Consolidated Statements of Comprehensive Income for the three</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_22"> months ended </a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_22">March</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_22"> 2</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_22">7</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_22">, 202</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_22">1</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_22"> and </a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_22">March</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_22"> 2</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_22">8</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_22">, 20</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_22">20</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_22">5</a></span></div></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:6.75pt"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_25">Condensed Consolidated Statement of Stockholders' Equity for the three </a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_25">months ended </a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_25">March </a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_25"> 2</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_25">7</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_25">, 202</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_25">1</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_25"> and </a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_25">March</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_25"> 28, 20</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_25">20</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_25">6</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:6.75pt"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_28">Condensed Consolidated Statements of Cash Flows for the three</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_28"> months ended </a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_28">March</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_28"> 2</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_28">7</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_28">, 202</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_28">1</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_28"> and </a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_28">March</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_28"> 28, 20</a><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_28">20</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_28">7</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:6.75pt"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_31">Notes to Condensed Consolidated Financial Statements</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_31">9</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_85">Item 2.</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_85">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_85">24</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_109">Item 3.</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_109">Quantitative and Qualitative Disclosures About Market Risk</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_109">32</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_112">Item 4.</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_112">Controls and Procedures</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_112">33</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_115">Part&#160;II.</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_115">Other Information</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_115">33</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_118">Item 1A.</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_118">Risk Factors</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_118">33</a></span></div></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_1173">Item 2.</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_1173">Unregistered Sales of Equity Securities and use of proceeds</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_1173">34</a></span></div></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_121">Item 6.</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_121">Exhibits</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_121">35</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_124">Signatures</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9c89e3d57c9546d7826f58de281429d9_124">36</a></span></div></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2</span></div></div></div><div id="i9c89e3d57c9546d7826f58de281429d9_10"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PART&#160;I - FINANCIAL INFORMATION</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div id="i9c89e3d57c9546d7826f58de281429d9_13"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 1. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Financial Statements</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:400;line-height:120%">&#160;</span></div><div id="i9c89e3d57c9546d7826f58de281429d9_16"></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">FORMFACTOR,&#160;INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CONDENSED CONSOLIDATED BALANCE SHEETS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(In thousands, except share and per share amounts)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:72.438%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.765%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.767%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 26,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">ASSETS</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Current assets:</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash and cash equivalents</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMy0xLTEtMS0w_a56d4e8e-5101-4ee2-ba1c-78ef549aa85d">173,616</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMy0zLTEtMS0w_f11da4f4-0c05-4c96-804a-686d0d395f5d">187,225</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Marketable securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecuritiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNC0xLTEtMS0w_5601cc3b-6b04-4c7e-9fff-23b788cb76f4">94,093</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecuritiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNC0zLTEtMS0w_9aa87a13-99eb-4858-bee1-c6975bf60679">67,810</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accounts receivable, net of allowance for doubtful accounts of $<ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNS0wLTEtMS0wL3RleHRyZWdpb246OGYzOWI0YzdmNTJiNGUzZmE4MWQ5Mzc4MWRkMTU2MzZfNjc_1726fed5-499e-4711-a55f-723019b9972f">232</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNS0wLTEtMS0wL3RleHRyZWdpb246OGYzOWI0YzdmNTJiNGUzZmE4MWQ5Mzc4MWRkMTU2MzZfNzQ_0b50b8d6-f9c6-461a-9e0a-f0b185f62247">248</ix:nonFraction></span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNS0xLTEtMS0w_1a1911f4-add5-42c2-9267-5feef4fced3a">103,500</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNS0zLTEtMS0w_ac65cd8d-0928-4b5e-a904-0076bd697673">107,603</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Inventories, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNi0xLTEtMS0w_c737c578-b394-47d6-acc0-14adf89fdb40">104,727</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNi0zLTEtMS0w_8e9fbe7e-89c3-4293-ba4a-248142ca244a">99,229</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Restricted cash</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNy0xLTEtMS0w_78a8680b-7bee-4d07-8d2f-47766bfe3197">2,798</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNy0zLTEtMS0w_7f386ba0-8f37-46db-9e9d-3c55893fc873">1,904</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfOC0xLTEtMS0w_d2f72176-7733-4e33-8875-61ceccc9cd92">19,371</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfOC0zLTEtMS0w_84778335-9b5f-4118-adbb-662e6327bd19">23,303</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total current assets</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AssetsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfOS0xLTEtMS0w_2699ca99-f3c5-4f23-89e9-8cb3a2b4f963">498,105</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AssetsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfOS0zLTEtMS0w_ff53ec01-0c2e-49f8-aa32-77b4ed92b32c">487,074</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Restricted cash</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RestrictedCashAndCashEquivalentsNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTAtMS0xLTEtMA_e0a27d1f-19af-4a87-bd88-9e1e0c74b458">1,894</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RestrictedCashAndCashEquivalentsNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTAtMy0xLTEtMA_125a428f-585f-45b7-ac09-449b82c7022b">1,969</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating lease, right-of-use-assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTEtMS0xLTEtMA_eca30d08-a1e6-4efe-bc4b-8d795fa67982">37,208</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTEtMy0xLTEtMA_3623034e-0901-41ab-b7df-247c68dcd6d8">30,756</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Property, plant and equipment, net of accumulated depreciation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTItMS0xLTEtMA_c3b2fca0-f47b-4727-b3c5-3a1416f994a6">112,312</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTItMy0xLTEtMA_e6204342-13b5-48ef-b7dd-6ad71e44bc14">104,103</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTMtMS0xLTEtMA_f37bf549-d085-4914-a0d2-1dfe53b1f7f5">214,218</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTMtMy0xLTEtMA_8275f098-5fd4-4578-a2e4-ec7fb2b9223c">212,761</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Intangibles, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTQtMS0xLTEtMA_9e224e19-0841-4ee7-a4ee-82c9b15944dd">48,786</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTQtMy0xLTEtMA_812f9bc6-6851-467e-ac22-3b84309a5a63">59,147</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Deferred tax assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTUtMS0xLTEtMA_bd443dc1-aeaa-4a01-b338-7f12dd3f7d38">65,821</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTUtMy0xLTEtMA_fdae1ac6-ed9e-434a-9716-fef5a4ae3901">66,242</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherAssetsNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTYtMS0xLTEtMA_21ac7d77-868b-40cf-a40d-cae367cebe75">1,867</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherAssetsNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTYtMy0xLTEtMA_62720062-af8f-4200-835d-b49289f33aa6">1,165</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTctMS0xLTEtMA_27c318b9-fc0c-4193-ae18-57dad1c6fdf8">980,211</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTctMy0xLTEtMA_050ef1bb-b0de-48e3-a7a9-f3b3de4a4e82">963,217</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:9pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">LIABILITIES AND STOCKHOLDERS&#8217; EQUITY</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Current liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accounts payable</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccountsPayableCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjEtMS0xLTEtMA_2f3f195b-3042-48c2-89ae-d8c73dff3cc6">67,720</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccountsPayableCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjEtMy0xLTEtMA_7c519abb-9880-4f47-8bec-1e0284e8e996">62,045</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjItMS0xLTEtMA_47b6dce7-f550-456e-a98a-7e07972c9120">43,468</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjItMy0xLTEtMA_eab3c994-cf1a-4e99-948b-0420e722348d">55,342</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Current portion of term loans, net of unamortized issuance costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LongTermDebtCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjMtMS0xLTEtMA_3be9c115-fab5-4986-b4f1-718f729611e4">9,260</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LongTermDebtCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjMtMy0xLTEtMA_8af615b5-df43-42f8-8605-d8f4027d100d">9,516</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Deferred revenue</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredRevenueCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjQtMS0xLTEtMA_3eb7a2ac-6664-443c-be3b-bdbafa9e0e67">18,644</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredRevenueCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjQtMy0xLTEtMA_37c85026-0a2f-4da1-863e-4fb0082d960d">20,964</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating lease liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjUtMS0xLTEtMA_e818e209-8251-40b2-8546-8c33938c005d">7,557</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjUtMy0xLTEtMA_00145a6e-2f6a-491f-9d16-26064216e57d">6,704</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total current liabilities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjYtMS0xLTEtMA_92abd34d-f43b-4bc2-a759-d61cb24a31e0">146,649</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjYtMy0xLTEtMA_c9c0bdb6-1a84-41c7-b76b-ff764d862f9b">154,571</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Term loans, less current portion, net of unamortized issuance costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LongTermDebtNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjctMS0xLTEtMA_a0608404-1998-4985-ab83-1d3497ecfde8">22,390</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LongTermDebtNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjctMy0xLTEtMA_52920bcd-d971-47ff-8467-f96f8946af04">24,978</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Deferred tax liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjgtMS0xLTEtMA_17877bd0-c86d-4d12-9c60-324eaffbac4d">4,965</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjgtMy0xLTEtMA_bbec0a39-f4c1-459f-923f-f0f3307e6050">5,346</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Long-term operating lease liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjktMS0xLTEtMA_0890352c-162c-45fd-a3ed-c10d1ab87107">33,485</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjktMy0xLTEtMA_b719d5e3-7ec4-4e7d-9f8f-ff8a48aea175">27,996</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredCreditsAndOtherLiabilitiesNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzAtMS0xLTEtMA_272be071-6d28-47c0-aa59-e553f7c5b4f2">6,189</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredCreditsAndOtherLiabilitiesNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzAtMy0xLTEtMA_2feddd78-0f6b-4be3-8820-94bf5ebd761e">6,242</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total liabilities</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Liabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzEtMS0xLTEtMA_bc5d4fea-9d79-47d1-97b3-4ac35cd04eed">213,678</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Liabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzEtMy0xLTEtMA_a6ce713e-c629-44f7-986c-4842e662e5b0">219,133</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stockholders&#8217; equity:</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Common stock, $<ix:nonFraction unitRef="usdPerShare" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzYtMC0xLTEtMC90ZXh0cmVnaW9uOmRmZTA2NzkxNmI5YjQ5NmJiNTUwYWE4OThjNTZlMzM4XzE4_8cb91948-feb8-438f-934c-8372850fff7d"><ix:nonFraction unitRef="usdPerShare" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzYtMC0xLTEtMC90ZXh0cmVnaW9uOmRmZTA2NzkxNmI5YjQ5NmJiNTUwYWE4OThjNTZlMzM4XzE4_cd2f63da-5128-4741-aae9-c7e76cc01cd1">0.001</ix:nonFraction></ix:nonFraction> par value:</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesAuthorized" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzctMC0xLTEtMC90ZXh0cmVnaW9uOjNiY2Y3OWYwZTJiOTQ2YTZiNjhmN2M5ZDEyNzY3M2E1XzQ_01f7e28d-67d3-4622-81ec-610a3ff92e68"><ix:nonFraction unitRef="shares" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesAuthorized" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzctMC0xLTEtMC90ZXh0cmVnaW9uOjNiY2Y3OWYwZTJiOTQ2YTZiNjhmN2M5ZDEyNzY3M2E1XzQ_25093f25-6c6c-4d94-9d6b-9763c397d871">250,000,000</ix:nonFraction></ix:nonFraction> shares authorized; <ix:nonFraction unitRef="shares" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzctMC0xLTEtMC90ZXh0cmVnaW9uOjNiY2Y3OWYwZTJiOTQ2YTZiNjhmN2M5ZDEyNzY3M2E1XzI2_823e9e23-02db-45a6-baa0-2f0e94a66d1a"><ix:nonFraction unitRef="shares" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzctMC0xLTEtMC90ZXh0cmVnaW9uOjNiY2Y3OWYwZTJiOTQ2YTZiNjhmN2M5ZDEyNzY3M2E1XzI2_ee73cd12-24a8-4d16-bbb6-39ee4a20a161">77,758,530</ix:nonFraction></ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzctMC0xLTEtMC90ZXh0cmVnaW9uOjNiY2Y3OWYwZTJiOTQ2YTZiNjhmN2M5ZDEyNzY3M2E1XzI3NDg3NzkwNjk1MDY_1b441ea6-1546-4a4a-b31c-66f1eb417e04"><ix:nonFraction unitRef="shares" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzctMC0xLTEtMC90ZXh0cmVnaW9uOjNiY2Y3OWYwZTJiOTQ2YTZiNjhmN2M5ZDEyNzY3M2E1XzI3NDg3NzkwNjk1MDY_85079292-74f9-46a4-af75-a3837883ba7c">77,437,997</ix:nonFraction></ix:nonFraction> shares issued and outstanding</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" name="us-gaap:CommonStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzctMS0xLTEtMA_6cc597ef-f660-4cd0-a0cc-198b77f09171">78</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" name="us-gaap:CommonStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzctMy0xLTEtMA_bbd44cd2-30f4-4b1a-820c-47f52a095cdc">78</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Treasury stock, at cost, <ix:nonFraction unitRef="shares" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockShares" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzgtMC0xLTEtMzMzL3RleHRyZWdpb246ODRjYjVlYWEwZmM1NDllZjg5NTAwOWU3YjcxYTVhODhfMjc0ODc3OTA2OTQ5NA_168e2ff4-abfc-48f1-b9d8-3651999b7624">136,402</ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="INF" format="ixt:zerodash" name="us-gaap:TreasuryStockShares" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzgtMC0xLTEtMzMzL3RleHRyZWdpb246ODRjYjVlYWEwZmM1NDllZjg5NTAwOWU3YjcxYTVhODhfMjc0ODc3OTA2OTQ5Nw_8e143d5b-1d79-48f9-af76-bed7d2b50edf">&#8212;</ix:nonFraction> shares</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzgtMS0xLTEtMzIy_b40404b0-a1db-4bc0-9979-6540386f929d">5,738</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:TreasuryStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzgtMy0xLTEtMzIy_b5835316-56e4-4e36-84c1-ee7ce23aeb3e">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Additional paid-in capital</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdditionalPaidInCapitalCommonStock" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzgtMS0xLTEtMA_ec1a45ee-11b9-4a0f-abc7-fe435e62781a">915,136</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdditionalPaidInCapitalCommonStock" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzgtMy0xLTEtMA_83f5f40c-4fb0-488e-85c2-6676c3801f0c">903,838</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accumulated other comprehensive income</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzktMS0xLTEtMA_b328718a-b4f8-4af8-b5be-e1e0171d5b63">3,150</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzktMy0xLTEtMA_44146720-6961-4524-a3a1-4f90e1bfefc4">5,886</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accumulated deficit</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNDAtMS0xLTEtMA_30a2c03f-6fe1-4603-a2d2-8d09450e9141">146,093</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNDAtMy0xLTEtMA_eb726e50-b4b2-40af-802b-52247f3aa5bb">165,718</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total stockholders&#8217; equity</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNDEtMS0xLTEtMA_459ff675-6619-4a09-bd2c-be3d480d073a">766,533</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNDEtMy0xLTEtMA_796a6480-9f06-4f99-a78e-cdf78b3214e0">744,084</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total liabilities and stockholders&#8217; equity</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNDItMS0xLTEtMA_ba4a31ff-4f46-473b-a378-efd0cfb82448">980,211</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNDItMy0xLTEtMA_38b67241-52ec-491c-85aa-2537e17019b5">963,217</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying notes are an integral part of these condensed consolidated financial statements.&#160;</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3</span></div></div></div><div id="i9c89e3d57c9546d7826f58de281429d9_19"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">FORMFACTOR,&#160;INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CONDENSED CONSOLIDATED STATEMENTS OF INCOME</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(In thousands, except per share amounts)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:74.484%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.742%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.744%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMi0xLTEtMS0w_080010ff-0fa7-4387-a1c2-c986b9b5e425">186,636</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMi0zLTEtMS0w_24fad1cd-01e7-44ed-a7a2-911ddc966aec">160,753</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenues</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMy0xLTEtMS0w_3db99e8b-3c2f-43fc-bea3-abf03f1d6bc6">109,930</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMy0zLTEtMS0w_553f44d1-1012-40d8-9b2b-0bf003a827f2">93,363</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfNC0xLTEtMS0w_64bf3e70-2034-4476-b4f6-6700d5114b7f">76,706</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfNC0zLTEtMS0w_a0c4b467-f8c1-4d74-9802-51e7a29334e8">67,390</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ResearchAndDevelopmentExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfNi0xLTEtMS0w_71433a11-ad1a-4f31-90f4-f031a40cdd6b">24,046</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ResearchAndDevelopmentExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfNi0zLTEtMS0w_fa41abe0-c0bd-426e-b5a6-f3a55648953a">21,267</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Selling, general and administrative</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfNy0xLTEtMS0w_cedb8ef3-8a95-4f20-9a54-400b789d556e">30,015</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfNy0zLTEtMS0w_14e924e9-c84f-4c54-a514-9980a4156634">27,693</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total operating expenses</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingExpenses" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfOC0xLTEtMS0w_a7876a3d-68fc-44de-b9b8-ce3139e51094">54,061</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingExpenses" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfOC0zLTEtMS0w_ea343111-3085-4d31-ad45-5f56c7ed7a75">48,960</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating income</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfOS0xLTEtMS0w_8c2c0ea7-89d3-41f9-bcd4-40b47855d93d">22,645</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfOS0zLTEtMS0w_db453aa3-5a1d-4933-8e25-32d10caf82cf">18,430</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest income</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" name="us-gaap:InvestmentIncomeInterest" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTAtMS0xLTEtMA_ef3146b4-4abd-498b-aaad-3fe703a21b0b">194</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" name="us-gaap:InvestmentIncomeInterest" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTAtMy0xLTEtMA_11347d0f-420b-4994-b90f-c787e56b8686">685</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" name="us-gaap:InterestExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTEtMS0xLTEtMA_14ed03a4-b400-400a-8827-2d04970be1c1">180</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" name="us-gaap:InterestExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTEtMy0xLTEtMA_5ddd394e-3a81-462c-bbb1-4795f9b652fb">318</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other income (expense), net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTItMS0xLTEtMA_6ac9d618-f051-45a8-8e8e-f9884e53b2cb">172</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" sign="-" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTItMy0xLTEtMA_bdc1c78a-ee83-496a-b8cb-9a8f23ad185f">91</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTMtMS0xLTEtMA_81a3adf8-585a-49ae-a0ae-45ace87d7c3c">22,831</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTMtMy0xLTEtMA_91bd60fd-aa2c-4323-9cb9-1baa48573a9e">18,706</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Provision for income taxes</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTQtMS0xLTEtMA_945504d5-9192-496e-ad2d-f5e6392de352">3,206</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTQtMy0xLTEtMA_34ee6441-ee88-41c0-ba86-2387d60d3ff6">2,816</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTUtMS0xLTEtMA_a21141af-7004-4c8e-ac4b-3777a7cb5fd7">19,625</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTUtMy0xLTEtMA_43a9a5c6-e73f-4418-90e1-1f6fb3fcb2e4">15,890</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income per share:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Basic </span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTctMS0xLTEtMA_020cf99c-d5da-4207-a2f3-678808ada4da">0.25</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTctMy0xLTEtMA_b327640c-aee4-4576-87c4-c229c01588a3">0.21</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Diluted</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTgtMS0xLTEtMA_06cc9e1c-4f31-40c1-93cc-fc4fdcea82a4">0.25</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTgtMy0xLTEtMA_30ef0317-d6b4-4c43-93a6-fdeda5cb0a0c">0.20</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted-average number of shares used in per share calculations:</span></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Basic </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMjAtMS0xLTEtMA_61e9d6fb-cb3e-4722-8204-8f12f4afcfe9">77,598</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMjAtMy0xLTEtMA_2117586a-415b-417a-a03c-58292af85955">76,005</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Diluted</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMjEtMS0xLTEtMA_23d0b44d-99b6-46e2-a393-59a33fe79308">79,988</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMjEtMy0xLTEtMA_79b5b66e-711e-4a39-8102-60281a61fe35">78,510</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> The accompanying notes are an integral part of these condensed consolidated financial statements.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4</span></div></div></div><div id="i9c89e3d57c9546d7826f58de281429d9_22"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">FORMFACTOR,&#160;INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(In thousands)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.607%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.180%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.183%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfMi0xLTEtMS0w_a21141af-7004-4c8e-ac4b-3777a7cb5fd7">19,625</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfMi0zLTEtMS0w_43a9a5c6-e73f-4418-90e1-1f6fb3fcb2e4">15,890</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other comprehensive loss, net of tax:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Translation adjustments and other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfNC0xLTEtMS0w_f8a32e5e-13d6-44cf-89a6-1f634f8a8912">2,379</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfNC0zLTEtMS0w_69ea0250-37ff-4a82-a0c9-7a9e66a9c665">399</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Unrealized losses on available-for-sale marketable securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfNS0xLTEtMS0w_31498dce-5521-48b9-b1fd-980ca2e36cee">131</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfNS0zLTEtMS0w_5c22bf4a-af12-4694-a5f7-6adf018b7372">27</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Unrealized gains (losses) on derivative instruments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfNi0xLTEtMS0w_2e2d70d9-0b86-4c77-b3d9-6c297fd24c07">226</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfNi0zLTEtMS0w_5e4c0618-7ad3-4079-87f0-a85d3cf3af2f">176</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other comprehensive loss, net of tax</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfNy0xLTEtMS0w_204e623d-529a-497c-87dc-afe2740a6d21">2,736</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfNy0zLTEtMS0w_e239872b-ea83-489d-a753-a5e4dfe8cff3">250</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Comprehensive income</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfOC0xLTEtMS0w_94526ee6-0f94-4eb9-b663-8c3665b6322c">16,889</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfOC0zLTEtMS0w_d1724a12-db95-4842-aacd-b9c69a6c9dce">15,640</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying notes are an integral part of these condensed consolidated financial statements.</span></div><div style="text-align:center"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5</span></div></div></div><div id="i9c89e3d57c9546d7826f58de281429d9_25"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">FORMFACTOR,&#160;INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(In thousands, except shares)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:22.730%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.256%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.356%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.356%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.356%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.256%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.449%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.841%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.390%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Shares of<br/>Common<br/>Stock</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Common<br/>Stock</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Shares of<br/>Treasury<br/>Stock</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Treasury<br/>Stock</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Additional<br/>Paid-in<br/>Capital</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Accumulated<br/>Other<br/>Comprehensive<br/>&#160;Income (Loss)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Accumulated<br/>Deficit</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="45" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 27, 2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Balances, December 26, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i6cae11157f05483aa2be0dea51aecf10_I20201226" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMi0xLTEtMS0w_73d25d31-f8ff-4232-b77c-6e6bed137e3e">77,437,997</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6cae11157f05483aa2be0dea51aecf10_I20201226" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMi0zLTEtMS0w_1138a9e3-b046-4111-88d0-e2ad8bd278b7">78</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ieb26fac254654bf7bca7afa960c2d3a8_I20201226" decimals="INF" format="ixt:zerodash" name="us-gaap:SharesOutstanding" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMi01LTEtMS0xODk_7717c655-f51e-4111-ad34-447473967cfa">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieb26fac254654bf7bca7afa960c2d3a8_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMi03LTEtMS0xODk_80244c73-d097-4479-9677-e8067fac839d">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0b15d00309954fbba558e9542f0721d2_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMi01LTEtMS0w_1cdb1fc9-f9e1-4373-8a0c-31a97d55765a">903,838</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i04bb121199ae4cd69f50b4c605a1ff96_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMi03LTEtMS0w_3319d185-421c-4b2c-8ef4-ac0eecdec12d">5,886</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i77e293278a644ee6b89b90c93275d810_I20201226" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMi05LTEtMS0w_f2782d6c-9cf6-4ecb-ba1c-00eaa492ee7d">165,718</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMi0xMS0xLTEtMA_dc93dc98-5a5e-4cd9-8478-39546a8837ce">744,084</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Issuance of common stock under the Employee Stock Purchase Plan</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i3f1bf6828a7940f4a13d6bb6704cf1eb_D20201227-20210327" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMy0xLTEtMS0w_860ce49f-2cde-4045-b5b0-cf1a79054e4c">228,784</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i729f4638ab4e4511bd4ad2752c512e82_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMy01LTEtMS0w_ec2916a7-91ef-48bc-813b-5af69ff73012">5,065</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMy0xMS0xLTEtMA_98d1ce4a-1c9f-41af-8f7f-ba113e27c66e">5,065</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Issuance of common stock pursuant to exercise of options</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i3f1bf6828a7940f4a13d6bb6704cf1eb_D20201227-20210327" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNC0xLTEtMS0w_4a1a51ec-1e7b-47c2-ad3b-9c123c3949a9">50,000</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3f1bf6828a7940f4a13d6bb6704cf1eb_D20201227-20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNC0zLTEtMS0w_1f77ec35-1a9c-4765-92b5-df6d6f309b33">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i729f4638ab4e4511bd4ad2752c512e82_D20201227-20210327" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNC01LTEtMS0w_eb2d7263-4dab-4db8-ac85-213055e95f7d">422</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNC0xMS0xLTEtMA_3159cbea-6ac3-4b00-9e2d-d26767271d23">422</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Issuance of common stock pursuant to vesting of restricted stock units, net of stock withheld for tax</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i3f1bf6828a7940f4a13d6bb6704cf1eb_D20201227-20210327" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNS0xLTEtMS0w_7f3a3a84-f35d-4248-aa16-3f85bd659183">41,749</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3f1bf6828a7940f4a13d6bb6704cf1eb_D20201227-20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNS0zLTEtMS0w_48084dfd-c25a-40a4-bb44-e1eb0664ff17">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i729f4638ab4e4511bd4ad2752c512e82_D20201227-20210327" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNS01LTEtMS0w_9009227b-ee8f-422c-9e5a-10c214a4c969">1,141</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNS0xMS0xLTEtMA_37ad8621-1424-4cc6-a54f-ee51077428b9">1,141</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Purchase of common stock through repurchase program</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i0d11788f365441038bf9e977162280c1_D20201227-20210327" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockSharesAcquired" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNi01LTEtMS0xODk_f522424b-293a-4874-9886-9a6e03e217e9">136,402</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i0d11788f365441038bf9e977162280c1_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNi03LTEtMS0xODk_8b65f641-2b0f-4b7e-b736-e4d1d1fa6710">5,738</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNi0xMS0xLTEtMA_81efff25-a048-4944-a879-cfd58f4dc2c4">5,738</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock-based compensation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i729f4638ab4e4511bd4ad2752c512e82_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNy01LTEtMS0w_a32be3da-b475-4bd1-8ad0-052bb4234cfa">6,952</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNy0xMS0xLTEtMA_d77aacb1-7f52-4482-8b38-3f3ae5ec7c8a">6,952</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other comprehensive loss</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i13671f0a918f4bd48deb65cded0db074_D20201227-20210327" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfOC03LTEtMS0w_4e319e9b-9862-4cbc-913f-142cc39a8837">2,736</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfOC0xMS0xLTEtMA_3b5c1005-f54b-48a6-a920-2f12b6c1f7e5">2,736</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2eec7d0dc66b47db97e1ad7db6a10e09_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfOS05LTEtMS0w_637ec828-d8ba-4343-a049-86545a659c63">19,625</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfOS0xMS0xLTEtMA_b22f748d-2e0f-43ea-84f3-c38e8b89b93a">19,625</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Balances, March 27, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i6f3e2c8af2304eafbee443016913a3e8_I20210327" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMTAtMS0xLTEtMA_d1d66f26-7f53-4847-8d75-99d0256d1bdd">77,758,530</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6f3e2c8af2304eafbee443016913a3e8_I20210327" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMTAtMy0xLTEtMA_9e039b04-5a55-48da-b8b6-1d76a2d08170">78</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i500f4312ae1c44caa47d6cdcc79ec327_I20210327" decimals="INF" sign="-" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMTAtNS0xLTEtMTg5_9f20659f-cfc6-4d35-a05d-ccc1a0e89408">136,402</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i500f4312ae1c44caa47d6cdcc79ec327_I20210327" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMTAtNy0xLTEtMTg5_727c1547-0534-45df-a9c7-a1ed89103be7">5,738</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia9682d64c1fc451998455e633eab2a10_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMTAtNS0xLTEtMA_fb4b7354-e650-418c-a2d6-39e0e1f98abf">915,136</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e6d5f6ac11b46d9a74b777fbb336ea6_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMTAtNy0xLTEtMA_1871fead-8f4e-41db-8350-0d6995af2b0f">3,150</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="if41d69e944ef45a4b44eec3d4a223fb2_I20210327" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMTAtOS0xLTEtMA_b7dd52a9-b377-4736-8fe1-0efa9627bd03">146,093</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMTAtMTEtMS0xLTA_31a7a970-74ae-468a-b420-7b88566939b8">766,533</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:23.022%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.256%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.356%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.356%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.356%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.256%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.449%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.841%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.390%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Shares of<br/>Common<br/>Stock</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Common<br/>Stock</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Shares of<br/>Treasury<br/>Stock</span></td><td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Treasury<br/>Stock</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Additional<br/>Paid-in<br/>Capital</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Accumulated<br/>Other<br/>Comprehensive<br/>Loss</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Accumulated<br/>Deficit</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="45" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 28, 2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Balances, December 28, 2019</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ib7bad9174c7c49609d91e6d5c3dfc9ae_I20191228" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMi0xLTEtMS0w_977a01c6-c669-437f-a9d0-3a3e4c742155">75,764,990</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib7bad9174c7c49609d91e6d5c3dfc9ae_I20191228" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMi0zLTEtMS0w_f137743c-e899-4998-a6f7-3baf4d1fbe69">76</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i4c6143c1609c4ab2bce37d037f54c330_I20191228" decimals="INF" format="ixt:zerodash" name="us-gaap:SharesOutstanding" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMi01LTEtMS0yNTE_4ca28076-bc9b-4061-a68a-0167a08be2a4">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4c6143c1609c4ab2bce37d037f54c330_I20191228" decimals="-3" format="ixt:zerodash" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMi03LTEtMS0yNTE_ebdf116f-7a0b-4bb7-a4de-449ddf5c52dc">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id8f458398d8c43e088d130df56016bb6_I20191228" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMi01LTEtMS0w_32d19352-f01e-44f6-a52a-7f6d4c06595d">885,821</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i44627f1e70d34766a2dbe07b15fb6950_I20191228" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMi03LTEtMS0w_af01e050-5281-4ee0-b300-03970e841925">659</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i7a3c798ab7664717ba65e058bdccb09a_I20191228" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMi05LTEtMS0w_b613637d-deb3-42ae-98b6-17aecabd53fc">244,241</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1eeff05d49e94a6396339ea847351869_I20191228" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMi0xMS0xLTEtMA_4a024d79-c218-4a2c-9849-006a2dc78270">640,997</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Issuance of common stock under the Employee Stock Purchase Plan</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ifb2d6dcf47c54abbb839c266c9cc4ee9_D20191229-20200328" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMy0xLTEtMS0w_57277038-046a-4f42-93e0-e2c0c8dddb45">311,591</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8e0b808cf3604c4495edbf47e23dcbe3_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMy01LTEtMS0w_de84d9ec-2e87-499b-8ad8-195a7ce6b0a8">4,066</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMy0xMS0xLTEtMA_0f058f7f-b941-4fe8-ac4c-36f07b051161">4,066</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Issuance of common stock pursuant to exercise of options</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ifb2d6dcf47c54abbb839c266c9cc4ee9_D20191229-20200328" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNC0xLTEtMS0w_b1019b7f-bd03-47c4-ae89-9ec43286533e">55,769</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifb2d6dcf47c54abbb839c266c9cc4ee9_D20191229-20200328" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNC0zLTEtMS0w_542c09d7-3e76-48ff-94ef-ccf4d9f32501">1</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8e0b808cf3604c4495edbf47e23dcbe3_D20191229-20200328" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNC01LTEtMS0w_7d57cd15-2b51-43a7-8dec-4846e31fe916">446</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNC0xMS0xLTEtMA_79270c0d-f6ac-424e-b0e8-f9c99a52d2de">447</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Issuance of common stock pursuant to vesting of restricted stock units, net of stock withheld for tax</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ifb2d6dcf47c54abbb839c266c9cc4ee9_D20191229-20200328" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNS0xLTEtMS0w_eba0aa61-32ac-45da-a07c-77614baaebd1">25,901</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifb2d6dcf47c54abbb839c266c9cc4ee9_D20191229-20200328" decimals="-3" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNS0zLTEtMS0w_662db7a1-d859-4270-aed0-b4273db28d52">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i8e0b808cf3604c4495edbf47e23dcbe3_D20191229-20200328" decimals="-3" sign="-" name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNS01LTEtMS0w_8948a42d-2ffb-4a3c-9c8a-0e1dd7270dd8">385</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" sign="-" name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNS0xMS0xLTEtMA_c71117f5-5c5e-4541-b79c-2776fa9999c7">385</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock-based compensation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8e0b808cf3604c4495edbf47e23dcbe3_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNy01LTEtMS0w_d8eb3902-cdfd-4e1b-960e-2c8a6eee69e7">5,652</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNy0xMS0xLTEtMA_2fe2126d-0a2b-4384-9be6-da7618b74aa4">5,652</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other comprehensive loss</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i18a16832376f439cb95baeee9a407ce6_D20191229-20200328" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfOS03LTEtMS0w_f7d337b9-32e3-4481-909e-19a3a433b5f8">250</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfOS0xMS0xLTEtMA_6537a6c5-e827-4f54-8346-452ec40c2c59">250</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i011a585811394934834767c1c02a574f_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTAtOS0xLTEtMA_e8ca4bd7-dbb8-45f5-ba07-f6e30a84f07c">15,890</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTAtMTEtMS0xLTA_9930721d-0460-444c-9587-95fcb3279de6">15,890</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Balances, March 28, 2020</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i1aa740cb5cdb42f0823f14129a3efe75_I20200328" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTEtMS0xLTEtMA_fca89325-05cb-4297-80a4-b66a6064ddab">76,158,251</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1aa740cb5cdb42f0823f14129a3efe75_I20200328" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTEtMy0xLTEtMA_08c9114d-3956-4d12-97c1-04669e3544a2">77</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="iedf25ec0f0c343d28e43f56ad6d7296d_I20200328" decimals="INF" format="ixt:zerodash" name="us-gaap:SharesOutstanding" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTAtNS0xLTEtMjUx_34918396-639f-4942-854f-1b7c7775403a">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iedf25ec0f0c343d28e43f56ad6d7296d_I20200328" decimals="-3" format="ixt:zerodash" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTAtNy0xLTEtMjUx_7d639a53-868a-46fc-b43e-701665d7d025">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3b762e4947834ca39c189d5d1b398f14_I20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTEtNS0xLTEtMA_7bea8476-fdee-4cd8-b3b4-d43bfdee518b">895,600</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="if7864453957e45bd925c6dd5aef3d902_I20200328" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTEtNy0xLTEtMA_4bcbe852-2e2e-45bc-9caa-f4e2b0e06480">909</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i594991f9cbb0403284090c5271d3ab3c_I20200328" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTEtOS0xLTEtMA_89a2517f-a750-4cc2-bc31-ca0ceb898e03">228,351</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i544b840724324a999b22494d0651898a_I20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTEtMTEtMS0xLTA_2c8db678-3759-4ebc-93a6-6d7ce493d063">666,417</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying notes are an integral part of these condensed consolidated financial statements.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">6</span></div></div></div><div id="i9c89e3d57c9546d7826f58de281429d9_28"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">FORMFACTOR, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(In thousands)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:74.449%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.759%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.760%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash flows from operating activities:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income </span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMy0xLTEtMS0w_52c263ef-595c-417d-a78a-fe4097c21d31">19,625</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMy0zLTEtMS0w_d955450f-bdcc-42cd-8567-6dab7993cb17">15,890</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Adjustments to reconcile net income to net cash provided by operating activities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Depreciation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNS0xLTEtMS0w_f51b057b-dd92-4e63-b5dd-f3e7bef4ede1">6,130</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Depreciation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNS0zLTEtMS0w_fc388960-aef2-40ac-9208-8577ba0f39c2">4,561</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amortization</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSoldAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNi0xLTEtMS0w_ee85601a-039b-4018-9338-6a5b66705e20">6,805</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSoldAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNi0zLTEtMS0w_c91440ef-1236-4c16-9381-98b9ba7cb64f">7,263</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Reduction in the carrying amount of right-of-use assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="form:OperatingLeaseRightOfUseAssetAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfOC0xLTEtMS0w_0113474d-1749-4c2e-a0a9-790220eab271">1,811</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="form:OperatingLeaseRightOfUseAssetAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfOC0zLTEtMS0w_23f8af2d-37e6-4c73-b8bd-33ce52e0b34f">1,511</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock-based compensation expense</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMTAtMS0xLTEtMA_e1bb8aff-889a-419d-b631-48a3aee0fea7">7,077</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMTAtMy0xLTEtMA_27a39913-595d-458a-ba98-ccf5b50331a7">5,623</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Provision for excess and obsolete inventories</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryWriteDown" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMTMtMS0xLTEtMA_a9cc87e6-6ed4-4cc7-8a30-caad7098ce0f">3,394</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryWriteDown" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMTMtMy0xLTEtMA_338c0a7c-1f54-4f99-a09d-7ab8e5bdbd4b">3,287</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other adjustments to reconcile net income to net cash provided by operating activities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherOperatingActivitiesCashFlowStatement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMTktMS0xLTEtMA_4041008e-9df6-4a15-a600-94505442c80d">2,140</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" name="us-gaap:OtherOperatingActivitiesCashFlowStatement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMTktMy0xLTEtMA_5a40d218-ea39-44cf-ac89-1f2135acbbc7">407</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Changes in assets and liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 30.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjEtMS0xLTEtMA_0d3a5943-fb28-4c5c-89ae-43cc373b42a3">3,576</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjEtMy0xLTEtMA_c2cf4918-5b0c-4c9e-8002-417fdcded7c4">7,803</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 30.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInInventories" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjItMS0xLTEtMA_9c905f76-27ad-4d19-8aae-d55d2f5c97a5">9,911</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInInventories" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjItMy0xLTEtMA_4b64f0a3-4cdc-4810-bdfc-ca7132e380e7">928</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 30.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjMtMS0xLTEtMA_8326b9a2-8160-46f2-add3-dd774d05e1bb">3,011</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjMtMy0xLTEtMA_896a1cd9-09d0-4735-bb0a-c4f61405d2c0">240</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 30.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjUtMS0xLTEtMA_05f7e59b-b420-4079-8ecf-eb3fde9188a3">50</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjUtMy0xLTEtMA_a801375c-e139-48cd-8776-894e67854451">194</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 30.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accounts payable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInAccountsPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjYtMS0xLTEtMA_fb3d34cb-41d9-427f-8fc7-5c9603e95956">5,722</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjYtMy0xLTEtMA_977bb06e-eb79-4e83-b833-5c42309f86fb">763</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 30.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjctMS0xLTEtMA_eccf86d8-967a-47f1-8ae6-463f741d4e7c">12,732</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjctMy0xLTEtMA_81ad57f5-2d2e-46b0-808e-2a6d1fcf211f">6,970</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 30.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" name="us-gaap:IncreaseDecreaseInOtherDeferredLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjktMS0xLTEtMA_26671b16-6dce-4ac6-bceb-8a311269ff7b">114</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" name="us-gaap:IncreaseDecreaseInOtherDeferredLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjktMy0xLTEtMA_6e0607fe-39ef-4289-a1bb-f75c0906a13b">33</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 30.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Deferred revenues</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInDeferredRevenue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzAtMS0xLTEtMA_c2925545-9872-4098-ac3e-fde011793356">2,411</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInDeferredRevenue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzAtMy0xLTEtMA_37145f17-7fb0-441f-954c-6e2efed3d971">123</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 30.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating lease liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeasePayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzEtMS0xLTEtMA_67535a81-7e63-4bb9-8e2a-2e6ab7852c39">1,945</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeasePayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzEtMy0xLTEtMA_ee882652-ea90-4cd3-8791-56b860c8ada5">1,591</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net cash provided by operating activities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzMtMS0xLTEtMA_43a7f36d-b7bf-41c8-9ebf-56404c1f252f">32,356</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzMtMy0xLTEtMA_fedd67eb-abbf-43d9-9e04-b107a17ed406">39,339</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash flows from investing activities:</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Acquisition of property, plant and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzUtMS0xLTEtMA_593a2bea-eb79-4e94-88f7-b736a8c58c74">13,470</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzUtMy0xLTEtMA_6cbfce76-d71c-4cb3-b40e-a281a6937f0b">12,050</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Proceeds from sale of a subsidiary</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzctMS0xLTEtMA_f4eecda2-773a-4515-a3a2-634c027301a0">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" name="us-gaap:ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzctMy0xLTEtMA_9594a1f4-6b8f-444e-a8b2-20b1447564e5">40</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Purchases of marketable securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquireMarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzktMS0xLTEtMA_fbd8ccd8-94d7-4fca-8935-a0acdb032507">41,062</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquireMarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzktMy0xLTEtMA_e8f2fa7c-ca71-4c09-baf9-490208a8c782">16,441</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Proceeds from maturities and sales of marketable securities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDAtMS0xLTEtMA_75544b09-e957-4721-8334-63cd106a2eca">14,610</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDAtMy0xLTEtMA_3c502677-e1cd-4ff0-a412-5354c18058a0">23,009</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 30.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net cash used in investing activities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDItMS0xLTEtMA_ff18c60a-e54b-404f-9b08-da24bdae286a">39,922</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDItMy0xLTEtMA_5193d706-fd33-4b2c-ab7c-9530b9307ed8">5,442</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash flows from financing activities:</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Proceeds from issuances of common stock</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDQtMS0xLTEtMA_a19be761-a5b0-4f64-8b46-b2915632286f">5,487</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDQtMy0xLTEtMA_2697edc8-ef16-4b79-ba9c-0b77d8971238">4,513</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Purchase of common stock through stock repurchase program</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsForRepurchaseOfCommonStock" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDUtMS0xLTEtMA_d1513d19-b53b-4c79-a670-f43d5e7c4dc8">5,738</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:zerodash" name="us-gaap:PaymentsForRepurchaseOfCommonStock" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDUtMy0xLTEtMA_8b2bf129-a44e-4b08-ae10-9d2b42bf832e">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Tax withholdings related to net share settlements of equity awards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDYtMS0xLTEtMA_5301e64e-0a09-4448-9e72-fe6ce597c75a">1,141</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDYtMy0xLTEtMA_2aede426-3c19-41d6-a8c5-a8dfffeeddef">385</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Principal repayments on term loans</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RepaymentsOfLongTermDebt" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDgtMS0xLTEtMA_7f497c50-f134-4063-905c-fa586b21b166">2,376</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RepaymentsOfLongTermDebt" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDgtMy0xLTEtMA_9dc35c07-9701-4a59-86e5-4337614d1c40">13,199</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 30.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net cash used in financing activities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTAtMS0xLTEtMA_f5f7965f-a5d2-4538-9fef-1fa3d32c5090">3,768</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTAtMy0xLTEtMA_9c61ea46-4f37-4784-b14b-927cd31e875c">9,071</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Effect of exchange rate changes on cash, cash equivalents and restricted cash</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTEtMS0xLTEtMA_974ea12d-0bd7-450a-ad6b-216d134608b4">1,456</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTEtMy0xLTEtMA_c0658f7b-3392-441b-90a8-4b17332dbf17">312</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net increase (decrease) in cash, cash equivalents and restricted cash</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTItMS0xLTEtMA_a12485d2-d584-4374-8b72-ea0972e1db3b">12,790</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTItMy0xLTEtMA_1b5fa8de-750c-4795-aa40-052f202e1cab">25,138</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash, cash equivalents and restricted cash, beginning of period</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTMtMS0xLTEtMA_c55b6715-bf1a-4a7c-a0eb-bdb6e33eeb9c">191,098</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1eeff05d49e94a6396339ea847351869_I20191228" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTMtMy0xLTEtMA_ae6e67a1-5a2f-487b-a515-a4e34c08f26f">147,937</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash, cash equivalents and restricted cash, end of period</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTQtMS0xLTEtMA_23774925-ddad-45a3-8ec8-282388993f21">178,308</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i544b840724324a999b22494d0651898a_I20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTQtMy0xLTEtMA_cded9681-0224-460a-87a6-b36d6d64f32a">173,075</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying notes are an integral part of these condensed consolidated financial statements.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">7</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">FORMFACTOR, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(In thousands)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:74.338%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.034%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.744%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Non-cash investing and financing activities:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Change in accounts payable and accrued liabilities related to property, plant and equipment purchases</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="form:ChangeInCapitalExpendituresIncurredButNotYetPaid" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfNC0xLTEtMS0yMjky_b8f2977f-da5d-4dcc-be31-694d0077a08f">1,087</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" sign="-" format="ixt:numdotdecimal" name="form:ChangeInCapitalExpendituresIncurredButNotYetPaid" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfNC0zLTEtMS0yMjky_664a503c-ebf0-47db-847c-90a08221c053">2,116</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating lease, right-of-use assets obtained in exchange for lease obligations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfNS0xLTEtMS0yMjky_8746ee12-e69b-4028-a149-e8f8bc5dc39e">8,572</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfNS0zLTEtMS0yMjky_599b01c4-c0d5-487c-95d7-02871b830038">6,307</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:12pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Supplemental disclosure of cash flow information:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash paid for income taxes, net</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxesPaidNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfNy0xLTEtMS0yMjg5_be88a643-7d5c-42f6-8d79-ad10eef28b10">1,034</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxesPaidNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfNy0zLTEtMS0yMjg5_1fa894ec-2002-482d-aa68-52c544c5973f">2,419</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash paid for interest</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" name="us-gaap:InterestPaidNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfOC0xLTEtMS0yMjg5_68e7e613-9b52-45dc-bae0-66966287ea1f">173</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" name="us-gaap:InterestPaidNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfOC0zLTEtMS0yMjg5_b84bb850-d4c1-438a-888c-daa663063e71">291</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:12pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Reconciliation of cash, cash equivalents and restricted cash:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash and cash equivalents</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfMTAtMS0xLTEtMjI4Ng_9b2a4ea1-4d81-440e-a21f-3f75d2099d0f">173,616</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i544b840724324a999b22494d0651898a_I20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfMTAtMy0xLTEtMjI4Ng_ad292a8c-e6e4-4944-832d-61e9b6715ba0">169,607</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Restricted cash, current</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RestrictedCashCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfMTEtMS0xLTEtMjI4Ng_48ada894-e37d-467c-aa30-2788387c2861">2,798</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i544b840724324a999b22494d0651898a_I20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RestrictedCashCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfMTEtMy0xLTEtMjI4Ng_a5919f88-f2ef-49b5-ae6b-d5426beaef55">2,107</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Restricted cash</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RestrictedCashNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfMTItMS0xLTEtMjI4Ng_fda00b66-c43c-409d-a6da-367c71026b92">1,894</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i544b840724324a999b22494d0651898a_I20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RestrictedCashNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfMTItMy0xLTEtMjI4Ng_98461ad4-4098-4dee-bf78-3d43a1159152">1,361</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total cash, cash equivalents and restricted cash</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfMTMtMS0xLTEtMjI4Ng_65c61198-bf40-435b-b11c-063e15d3a89c">178,308</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i544b840724324a999b22494d0651898a_I20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfMTMtMy0xLTEtMjI4Ng_4b5a30f2-c4b1-41ea-a25c-90628316f71c">173,075</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying notes are an integral part of these condensed consolidated financial statements.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">8</span></div></div></div><div id="i9c89e3d57c9546d7826f58de281429d9_31"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">FORMFACTOR,&#160;INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div><div style="text-align:center"><span><br/></span></div><div id="i9c89e3d57c9546d7826f58de281429d9_34"></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 1 &#8212; <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNC9mcmFnOjA4MzRiNjFhMzU0ZTQ4ZTA5ZmU2MDg2OWU2OTJkZjBhL3RleHRyZWdpb246MDgzNGI2MWEzNTRlNDhlMDlmZTYwODY5ZTY5MmRmMGFfNTc5OA_c27a77ca-ef8d-4c30-ae2a-bc4edb7e7ac1" continuedAt="ie34ffdd510e2422291eedde4217abc14" escape="true">Basis of Presentation and New Accounting Pronouncements</ix:nonNumeric></span></div><ix:continuation id="ie34ffdd510e2422291eedde4217abc14"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:BasisOfAccountingPolicyPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNC9mcmFnOjA4MzRiNjFhMzU0ZTQ4ZTA5ZmU2MDg2OWU2OTJkZjBhL3RleHRyZWdpb246MDgzNGI2MWEzNTRlNDhlMDlmZTYwODY5ZTY5MmRmMGFfNTc5MA_f38860ae-c5cd-4ce8-a68d-22f4b989fcb0" continuedAt="ib073190ee1114fa19b08c337c6c6ca38" escape="true">Basis of Presentation</ix:nonNumeric></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ib073190ee1114fa19b08c337c6c6ca38">The accompanying condensed consolidated financial information of FormFactor,&#160;Inc. is unaudited and has been prepared in accordance with accounting principles generally accepted in the United States of America (&#8220;GAAP&#8221;) and pursuant to the rules and regulations of the Securities and Exchange Commission (&#8220;SEC&#8221;). However, such information reflects all adjustments, consisting only of normal recurring adjustments, which are, in the opinion of management, necessary for a fair presentation of the financial position, results of operations and cash flows for the interim periods. The condensed consolidated financial statements included herein should be read in conjunction with the consolidated financial statements and the notes thereto included in our 2020 Annual Report on Form 10-K filed with the SEC on February 22, 2021. The results of operations for the interim periods presented are not necessarily indicative of the results to be expected for the full year.</ix:continuation> </span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:FiscalPeriod" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNC9mcmFnOjA4MzRiNjFhMzU0ZTQ4ZTA5ZmU2MDg2OWU2OTJkZjBhL3RleHRyZWdpb246MDgzNGI2MWEzNTRlNDhlMDlmZTYwODY5ZTY5MmRmMGFfNTgwMg_35b1e5e7-8a94-4cec-bb8d-49aaa9a3a49c" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Fiscal Year</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We operate on a 52/53 week fiscal year, whereby the fiscal year ends on the last Saturday of December. Fiscal 2021 and 2020 each contain 52 weeks and the three months ended March&#160;27, 2021 and March&#160;28, 2020 each contained 13 weeks. Fiscal 2021 will end on December&#160;25, 2021.</span></div></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Significant Accounting Policies</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our significant accounting policies have not changed during the three months ended March&#160;27, 2021 from those disclosed in our Annual Report on Form&#160;10-K for the year ended December&#160;26, 2020.</span></div><div style="text-align:justify"><span><br/></span></div><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:PriorPeriodReclassificationAdjustmentDescription" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNC9mcmFnOjA4MzRiNjFhMzU0ZTQ4ZTA5ZmU2MDg2OWU2OTJkZjBhL3RleHRyZWdpb246MDgzNGI2MWEzNTRlNDhlMDlmZTYwODY5ZTY5MmRmMGFfNTQ5NzU1ODE0NDY5Mw_28f9850d-0d1c-46ec-a0cc-cd6b3b963d61" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Reclassifications</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certain immaterial reclassifications were made to the prior year financial statements to conform to the current year presentation.</span></div></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNC9mcmFnOjA4MzRiNjFhMzU0ZTQ4ZTA5ZmU2MDg2OWU2OTJkZjBhL3RleHRyZWdpb246MDgzNGI2MWEzNTRlNDhlMDlmZTYwODY5ZTY5MmRmMGFfNTc5MQ_f010dcf0-3f94-438e-aaa5-7596fc0a72fd" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">New Accounting Pronouncements</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">ASU 2019-12</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In December 2019, the Financial Accounting Standard Board (&#8220;FASB&#8221;) issued Accounting Standards Update (&#8220;ASU&#8221;) 2019-12, &#8220;Income Taxes (Topic 740),&#8221; which simplifies the accounting for income taxes by removing certain exceptions to the general principles in Topic 740. The amendments also improve consistent application of and simplify GAAP for other areas of Topic 740 by clarifying and amending existing guidance. This guidance is effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2020. We adopted ASU 2019-12 on a prospective basis on December 27, 2020, the first day of fiscal 2021. The adoption did not have a material effect on our consolidated financial position, results of operations or cash flows. </span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">ASU 2020-04</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In March 2020, the FASB issued ASU 2020-04, &#8220;Referenced Rate Reform (Topic 848) - Facilitation of the Effects of Reference Rate Reform on Financial Reporting.&#8221; The ASU provides temporary optional expedients and exceptions for applying generally accepted accounting principles to contract modifications and hedging relationships, subject to meeting certain criteria, that reference the London Interbank Offered Rate (&#8220;LIBOR&#8221;) or another reference rate expected to be discontinued. In January 2021, the FASB issued ASU 2021-01, &#8220;Reference Rate Reform (Topic 848),&#8221; which permits entities to apply optional expedients in Topic 848 to derivative instruments modified because of discounting transition resulting from reference rate reform. ASU 2020-04 became effective upon issuance and may be applied prospectively to contract modifications made on or before December 31, 2022. ASU 2021-01 became effective upon issuance and may be applied on a full retrospective basis as of any date from the beginning of an interim period that includes or is subsequent to March 12, 2020 or prospectively for contract modifications made on or before December 31, 2022. The Company has not yet applied the relief afforded by these standard amendments and is currently assessing contracts that will require modification due to reference rate reform to which these standard amendments may be applied.</span></div></ix:nonNumeric></ix:continuation><div style="text-align:justify"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">9</span></div></div></div><div id="i9c89e3d57c9546d7826f58de281429d9_37"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 2 &#8212; <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ConcentrationRiskDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RleHRyZWdpb246NWJhNGMwZjUzZTlhNDU5NzgxYWQxODcxZTRmNjdhMTVfMzg5_593b4bca-2ee0-4637-a03b-0b73a082fb26" continuedAt="i835027ac761046158b323804da6c3c36" escape="true">Concentration of Credit and Other Risks</ix:nonNumeric></span></div><div style="text-align:justify"><span><br/></span></div><ix:continuation id="i835027ac761046158b323804da6c3c36" continuedAt="ic533bdaee8524192a7103b83025727ed"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RleHRyZWdpb246NWJhNGMwZjUzZTlhNDU5NzgxYWQxODcxZTRmNjdhMTVfMzky_ba287249-dd25-40d1-96eb-8141868afda3" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Each of the following customers accounted for 10% or more of our revenues for the periods indicated: </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.315%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.329%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Intel Corporation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i9feef629422b43d1a34d669ca728b358_D20201227-20210327" decimals="3" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RhYmxlOjQzNzNiZmU4YTljZTQzZWE4OGY5MjQxMWY1NTBkZTFkL3RhYmxlcmFuZ2U6NDM3M2JmZThhOWNlNDNlYTg4ZjkyNDExZjU1MGRlMWRfMi0xLTEtMS0w_6522b16a-231a-4be9-8c7d-1c086648f57b">28.1</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i0db017a702d741ec90758394f990256c_D20191229-20200328" decimals="3" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RhYmxlOjQzNzNiZmU4YTljZTQzZWE4OGY5MjQxMWY1NTBkZTFkL3RhYmxlcmFuZ2U6NDM3M2JmZThhOWNlNDNlYTg4ZjkyNDExZjU1MGRlMWRfMi0zLTEtMS0w_5854ca14-dbb7-41a9-8f0b-0d9e2cfe8058">36.2</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Taiwan Semiconductor Manufacturing Co., LTD.</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="id7cd3ffae18748e8a7b7c82d53cda841_D20201227-20210327" decimals="3" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RhYmxlOjQzNzNiZmU4YTljZTQzZWE4OGY5MjQxMWY1NTBkZTFkL3RhYmxlcmFuZ2U6NDM3M2JmZThhOWNlNDNlYTg4ZjkyNDExZjU1MGRlMWRfMy0xLTEtMS0w_fd69b6b9-2db4-44be-9b2d-62ef241ff9ab">11.5</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">*</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i92fb9c092984474caaff0d4eb06e6da1_D20201227-20210327" decimals="3" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RhYmxlOjQzNzNiZmU4YTljZTQzZWE4OGY5MjQxMWY1NTBkZTFkL3RhYmxlcmFuZ2U6NDM3M2JmZThhOWNlNDNlYTg4ZjkyNDExZjU1MGRlMWRfNy0xLTEtMS0w_c426fbb9-86b0-4d9c-9672-9eccbe415fa9">39.6</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i048871285eab482f8256c3c11121fb6d_D20191229-20200328" decimals="3" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RhYmxlOjQzNzNiZmU4YTljZTQzZWE4OGY5MjQxMWY1NTBkZTFkL3RhYmxlcmFuZ2U6NDM3M2JmZThhOWNlNDNlYTg4ZjkyNDExZjU1MGRlMWRfNy0zLTEtMS0w_ed0e7f59-a81e-49bf-922c-9de9a0675d41">36.2</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="margin-top:4pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">*Represents less than 10% of total revenues.</span></div></ix:nonNumeric></ix:continuation><div style="margin-top:4pt;text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ic533bdaee8524192a7103b83025727ed">At March&#160;27, 2021, one customer accounted for <ix:nonFraction unitRef="number" contextRef="idf8294fdf189489284ad6181584d738a_D20201227-20210327" decimals="3" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RleHRyZWdpb246NWJhNGMwZjUzZTlhNDU5NzgxYWQxODcxZTRmNjdhMTVfMjM4_b650ced6-86f6-4ba6-96b0-328c79b58d42">22.8</ix:nonFraction>% of gross accounts receivable. At December&#160;26, 2020, two customers accounted for <ix:nonFraction unitRef="number" contextRef="i2b0d72da70f64e2baa56826b9993d786_D20191229-20201226" decimals="3" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RleHRyZWdpb246NWJhNGMwZjUzZTlhNDU5NzgxYWQxODcxZTRmNjdhMTVfMzI2_5839166e-94f7-4204-9c8e-e78de8958b93">15.3</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="ib5f0fa9fa6e546b4b723ae9c7eb7d887_D20191229-20201226" decimals="3" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RleHRyZWdpb246NWJhNGMwZjUzZTlhNDU5NzgxYWQxODcxZTRmNjdhMTVfMzMw_e436024a-6d70-4d49-b956-918422b47989">13.7</ix:nonFraction>% of gross accounts receivable, respectively.</ix:continuation> </span></div><div style="text-align:justify"><span><br/></span></div><div id="i9c89e3d57c9546d7826f58de281429d9_40"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 3 &#8212; <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:InventoryDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RleHRyZWdpb246YzljY2JmZjQ5YTU4NGQ3M2ExNjQ4ZjU2OGZhMjM3ZjJfMjYy_8e7b9d29-9389-4c0d-94ec-bce9d82c00f7" continuedAt="i5a3d3c23929548bab6c3bb3111729995" escape="true">Inventories, net </ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="i5a3d3c23929548bab6c3bb3111729995"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories are stated at the lower of cost (principally standard cost, which approximates actual cost on a first in, first out basis) or net realizable value.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RleHRyZWdpb246YzljY2JmZjQ5YTU4NGQ3M2ExNjQ4ZjU2OGZhMjM3ZjJfMjU5_67d04616-c110-4128-ba0a-12d4b3abd279" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories, net, consisted of the following (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.315%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.329%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 26,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Raw materials</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryRawMaterialsNetOfReserves" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RhYmxlOjJhZjNkZDQwMjNlMTRjMGI4ZTIxZjdiZDZmOWZmYWJkL3RhYmxlcmFuZ2U6MmFmM2RkNDAyM2UxNGMwYjhlMjFmN2JkNmY5ZmZhYmRfMS0xLTEtMS0w_81f3c82f-dad8-48c8-b8c6-40c98302a016">52,320</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryRawMaterialsNetOfReserves" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RhYmxlOjJhZjNkZDQwMjNlMTRjMGI4ZTIxZjdiZDZmOWZmYWJkL3RhYmxlcmFuZ2U6MmFmM2RkNDAyM2UxNGMwYjhlMjFmN2JkNmY5ZmZhYmRfMS0zLTEtMS0w_f3cfff13-7557-4aee-a9bc-0cf1518d3923">48,122</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Work-in-progress</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryWorkInProcessNetOfReserves" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RhYmxlOjJhZjNkZDQwMjNlMTRjMGI4ZTIxZjdiZDZmOWZmYWJkL3RhYmxlcmFuZ2U6MmFmM2RkNDAyM2UxNGMwYjhlMjFmN2JkNmY5ZmZhYmRfMi0xLTEtMS0w_f2617da2-3ba3-401a-b150-a56bdd86c5da">35,466</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryWorkInProcessNetOfReserves" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RhYmxlOjJhZjNkZDQwMjNlMTRjMGI4ZTIxZjdiZDZmOWZmYWJkL3RhYmxlcmFuZ2U6MmFmM2RkNDAyM2UxNGMwYjhlMjFmN2JkNmY5ZmZhYmRfMi0zLTEtMS0w_d238622c-17e8-4450-81ce-c1a27155b354">30,806</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Finished goods</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryFinishedGoodsNetOfReserves" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RhYmxlOjJhZjNkZDQwMjNlMTRjMGI4ZTIxZjdiZDZmOWZmYWJkL3RhYmxlcmFuZ2U6MmFmM2RkNDAyM2UxNGMwYjhlMjFmN2JkNmY5ZmZhYmRfMy0xLTEtMS0w_9b96f1c8-534f-47bf-96b6-906cf511b251">16,941</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryFinishedGoodsNetOfReserves" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RhYmxlOjJhZjNkZDQwMjNlMTRjMGI4ZTIxZjdiZDZmOWZmYWJkL3RhYmxlcmFuZ2U6MmFmM2RkNDAyM2UxNGMwYjhlMjFmN2JkNmY5ZmZhYmRfMy0zLTEtMS0w_735ff0bd-2935-439b-823a-7fb6edf78236">20,301</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RhYmxlOjJhZjNkZDQwMjNlMTRjMGI4ZTIxZjdiZDZmOWZmYWJkL3RhYmxlcmFuZ2U6MmFmM2RkNDAyM2UxNGMwYjhlMjFmN2JkNmY5ZmZhYmRfNC0xLTEtMS0w_eba9f80e-c2a3-4488-8c24-ae04fbe630eb">104,727</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RhYmxlOjJhZjNkZDQwMjNlMTRjMGI4ZTIxZjdiZDZmOWZmYWJkL3RhYmxlcmFuZ2U6MmFmM2RkNDAyM2UxNGMwYjhlMjFmN2JkNmY5ZmZhYmRfNC0zLTEtMS0w_1aabb974-9512-4cb6-ab70-9739fc91d6c6">99,229</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="text-align:justify"><span><br/></span></div><div id="i9c89e3d57c9546d7826f58de281429d9_43"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 4</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#8212; <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:BusinessCombinationDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RleHRyZWdpb246ZWU0NGYxMDk2NGQzNDFjODg0YTg5NmIxZmEzZjkxMjhfODE3Ng_bcb24b87-1350-48c5-8703-66cbe3372f2d" continuedAt="i7c83dbe2de5446ed932dca3c6331e53d" escape="true">Acquisition </ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="i7c83dbe2de5446ed932dca3c6331e53d" continuedAt="ib232b5cae48e4d069f288beda1bf5bfa"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">High Precision Devices, Inc. Acquisition </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On October 19, 2020,  we acquired <ix:nonFraction unitRef="number" contextRef="i59457e16636c4a7f800a5687585d0059_I20201019" decimals="INF" name="us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RleHRyZWdpb246ZWU0NGYxMDk2NGQzNDFjODg0YTg5NmIxZmEzZjkxMjhfMjE5OTAyMzMwMjU2MQ_a038b2ec-19d6-4f38-bf41-2c3f2619ddab">100</ix:nonFraction>% of the shares of HPD for total consideration of $<ix:nonFraction unitRef="usd" contextRef="i13d981e1e3314322933fc54d4f48f8ad_D20201019-20201019" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationConsiderationTransferred1" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RleHRyZWdpb246ZWU0NGYxMDk2NGQzNDFjODg0YTg5NmIxZmEzZjkxMjhfMTA5OTUxMTY1MTgyNw_36b853b2-16c5-4df3-8920-09ca0faf3cc2">16.9</ix:nonFraction> million, net of cash acquired of $<ix:nonFraction unitRef="usd" contextRef="i59457e16636c4a7f800a5687585d0059_I20201019" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RleHRyZWdpb246ZWU0NGYxMDk2NGQzNDFjODg0YTg5NmIxZmEzZjkxMjhfMTA5OTUxMTY1MTgzNw_05895d00-758b-464d-bb76-9643f70d3778">1.7</ix:nonFraction> million, which included an estimated adjustment for changes in working capital, which is not yet finalized. This acquisition brings highly specialized skills and know-how to address the unique test challenges within the emerging quantum computing, superconducting computing, and ultra-sensitive sensor markets which operate at temperatures as low as <ix:nonFraction unitRef="millikelvin" contextRef="i50122fb52abb4650a343bcaf0eb341eb_I20201019" decimals="0" name="form:SensorMarketsOperatingTemperature" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RleHRyZWdpb246ZWU0NGYxMDk2NGQzNDFjODg0YTg5NmIxZmEzZjkxMjhfMjE5OTAyMzMwMjU2Nw_406b15c4-f877-4605-8a6a-2b5d9629a426">30</ix:nonFraction> millikelvin.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The acquisition was accounted for using the acquisition method of accounting, with FormFactor treated as the acquirer. The acquired assets and liabilities of HPD were recorded at their respective fair values including an amount for goodwill representing the difference between the acquisition consideration and the fair value of the identifiable net assets. </span></div><div style="text-align:justify;text-indent:27pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Our Condensed Consolidated Statements of Income include the financial results of HPD subsequent to the acquisition date of October 19, 2020. Revenue in fiscal 2020 related to HPD subsequent to the acquisition date that was included in our Condensed Consolidated Statements of Income was not material. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The acquisition price was allocated to the tangible and identified intangible assets acquired and liabilities assumed as of the closing date of the acquisition based upon their respective fair values. The fair values assigned to assets acquired and liabilities assumed were based on management&#8217;s assumptions as of the reporting date. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">We estimated the acquisition price and the allocation of fair value to assets acquired and liabilities assumed as of the acquisition date, October 19, 2020. We subsequently made certain immaterial adjustments within the measurement period to the preliminary acquisition price allocation. See Note 5, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">Goodwill and Intangible Assets</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">, for changes in identified intangible values and goodwill. Our purchase accounting remains open at March 27, 2021, subject to finalization of the fair value of </span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">10</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="ib232b5cae48e4d069f288beda1bf5bfa" continuedAt="i48f5de78b86c40d881145a538603915c"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">consideration and certain deferred tax items. <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RleHRyZWdpb246ZWU0NGYxMDk2NGQzNDFjODg0YTg5NmIxZmEzZjkxMjhfMjE5OTAyMzMwMjU3MA_5db8e42f-bcbc-4742-94f2-84e6e0f2598f" continuedAt="i1292624c4fe34377a549cf28caee97dc" escape="true">The estimated fair value of assets acquired, including goodwill and intangibles, and liabilities assumed is as follows (in thousands):</ix:nonNumeric></span></div><div style="margin-bottom:6pt;text-align:justify"><ix:continuation id="i1292624c4fe34377a549cf28caee97dc" continuedAt="ib674d59bf54843c8abbf966242e15b3d"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:87.642%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.428%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash and cash equivalents</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i59457e16636c4a7f800a5687585d0059_I20201019" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfMS0yLTEtMS03NTA_b0e3138b-5e4f-4fde-988e-fde8b6d053bb">1,680</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i59457e16636c4a7f800a5687585d0059_I20201019" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfMi0yLTEtMS03NTA_6741dee8-4eb2-48d3-86b0-6ec7cc58bc6c">1,017</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventory</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i59457e16636c4a7f800a5687585d0059_I20201019" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfMy0yLTEtMS03NTA_ab0e23af-a668-4f63-ad37-0f4a6aa0bf63">3,047</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant and equipment</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i59457e16636c4a7f800a5687585d0059_I20201019" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfNC0yLTEtMS03NTA_f9363075-be28-4228-9e5f-0845879806cb">669</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease, right of use assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i59457e16636c4a7f800a5687585d0059_I20201019" decimals="-3" format="ixt:numdotdecimal" name="form:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfNS0yLTEtMS03NTA_fbda5c01-ba6d-4cb4-8d9b-0b4886103843">2,554</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i59457e16636c4a7f800a5687585d0059_I20201019" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfNi0yLTEtMS03NTA_c7342bbf-f570-406e-8979-f9c6bebec433">599</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tangible assets acquired</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i59457e16636c4a7f800a5687585d0059_I20201019" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfNy0yLTEtMS03NTA_b27226ba-8f26-491b-8388-f61663088d03">9,566</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i59457e16636c4a7f800a5687585d0059_I20201019" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfOC0yLTEtMS03NTA_a9e5f22c-9b69-4969-a548-73eee5127b90">2,529</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable and accrued liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i59457e16636c4a7f800a5687585d0059_I20201019" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfOS0yLTEtMS03NTA_a0990031-98bd-4838-bd45-88e1d91ca035">1,268</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i59457e16636c4a7f800a5687585d0059_I20201019" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfMTAtMi0xLTEtNzUw_3042bd88-8801-4c07-a8f4-db64ef578a9e">2,554</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred tax liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i59457e16636c4a7f800a5687585d0059_I20201019" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfMTEtMi0xLTEtNzUw_256c02da-5d57-465a-b18f-c6b4919dc1b6">2,840</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total tangible assets acquired and liabilities assumed</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i59457e16636c4a7f800a5687585d0059_I20201019" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfMTItMi0xLTEtNzUw_6eb53d8e-c32f-4458-9f44-7ffd7f8f7c13">375</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangible assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i59457e16636c4a7f800a5687585d0059_I20201019" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfMTMtMi0xLTEtNzUw_c3b81b39-2b3e-4b48-8d14-30df0d78f1f4">11,520</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i59457e16636c4a7f800a5687585d0059_I20201019" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfMTQtMi0xLTEtNzUw_fc8395df-6375-4281-8c2e-ce451b6f02c0">6,665</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net Assets Acquired</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i59457e16636c4a7f800a5687585d0059_I20201019" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfMTUtMi0xLTEtNzUw_deeda55d-b328-49f6-870a-a1b7be1cf367">18,560</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:continuation></div><div style="text-indent:27pt"><span><br/></span></div><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RleHRyZWdpb246ZWU0NGYxMDk2NGQzNDFjODg0YTg5NmIxZmEzZjkxMjhfMjE5OTAyMzMwMjU3MQ_229c468c-5189-43d1-a76f-ef1963770a26" continuedAt="i3c44ab444dbd4332826ad40c120901f6" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The intangible assets as of the closing date of the acquisition included (in thousands): </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:67.174%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.969%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.280%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.347%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Weighted Average Useful Life (in years)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Developed technologies</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4be5a37c2e7946ba905ae550ba42fc3c_I20201019" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfMS0yLTEtMS03NTA_cd5248e9-5b82-4ed0-a78f-7cfb536d4863">7,500</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i7ba3f46d5d654736b039a7f7c8625257_D20201019-20201019" format="ixt-sec:duryear" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfMS00LTEtMS03NTA_46c08487-fed6-4823-868f-a316e3c9cab6">10.0</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibe9a4e09fb1948b2b4e9027bd1d509a7_I20201019" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfMi0yLTEtMS03NTA_feee9f7a-436c-427e-ba92-7a952fb94925">3,600</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i660f2d27d2e8460b88e123b35c1c4a93_D20201019-20201019" format="ixt-sec:duryear" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfMi00LTEtMS03NTA_63b91062-304e-442b-b1b8-636220135c50">5.0</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Order backlog</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i34afe745690d4ed7a3e161410ab24d3a_I20201019" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfMy0yLTEtMS03NTA_d4aee1a1-a0bc-4c14-ad20-95cc7af46b53">200</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i3619f7a8938a4046b1854b6d2b2b5896_D20201019-20201019" format="ixt-sec:duryear" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfMy00LTEtMS03NTA_6e569dd3-e090-45fd-83d3-3e954ab90b39">0.5</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade names</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i77516486733640dab1fa1c83989f6557_I20201019" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfNC0yLTEtMS03NTA_8e4c8cf7-e4ce-452b-9d88-8f338d1907bc">220</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i091c18f477db46a0be4b3906425aa30c_D20201019-20201019" format="ixt-sec:duryear" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfNC00LTEtMS03NTA_2a3f32bd-2458-45f6-82e2-31dc3f5b346b">5.0</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total intangible assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i59457e16636c4a7f800a5687585d0059_I20201019" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfNS0yLTEtMS03NTA_a015466f-e1a5-43c0-85f6-4ffc95e7e795">11,520</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i13d981e1e3314322933fc54d4f48f8ad_D20201019-20201019" format="ixt-sec:duryear" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfNS00LTEtMS03NTA_ccdc5430-2f91-40e7-857e-432ec5bcc398">8.2</ix:nonNumeric></span></td></tr></table></div></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of the intangible assets acquired in connection with the acquisition was determined using either the income, market or replacement cost methodologies. The intangible assets are being amortized over periods which reflect the pattern in which economic benefits of the assets are expected to be realized.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Identifiable Intangible Assets</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Valuation of intangible assets involves multiple assumptions. The key assumptions are described below.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Developed technology acquired primarily consists of existing technology related to cryogenic probe stations, Adiabatic Demagnetization Refrigerator (&#8220;ADR&#8221;), and continuous ADR cryostats and similar tools, and technology related to other cryogenic applications. We valued the developed technology using the multi-period excess earnings method under the income approach. Using this approach, the estimated fair values were calculated using expected future cash flows from specific products discounted to their net present values at an appropriate risk-adjusted rate of return. </span></div><div style="text-align:justify;text-indent:27pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The value of customer relationships represents the fair value of future projected revenues that will be derived from the sale of products to HPD's existing customers. We valued customer relationships using the incremental cash flow method. This method estimates value based on the incremental cash flow afforded by having the customers relationships in place on the acquisition date versus having no relationships in place and needing to replicate or replace those relationships. The incremental cash flows are then discounted to a present value to arrive at an estimate of fair value for this asset class.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Order backlog represents the value of future sales under existing contracts as of the acquisition date. Expected cash flow from order backlog was valued on a discounted direct cash flow basis, net of returns on contributory assets such as working capital, property and equipment, trade name and assembled workforce.</span></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">11</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="i48f5de78b86c40d881145a538603915c" continuedAt="i8259a1af410940e4a63ef208cf01c701"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The identified trade names intangibles relate to the estimated fair value of future cash flows related to the HPD brand. We valued trade names by applying the relief-from-royalty method under the income approach. This method is based on the application of a royalty rate to forecasted revenue under the trade name. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Goodwill</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The excess of purchase price over the fair value assigned to the assets acquired and liabilities assumed represents the amount of goodwill resulting from the acquisition. We believe the factors that contributed to goodwill include synergies that are specific to our consolidated business, such as cost savings and operational efficiencies, and the acquisition of a talented workforce that expands our expertise in business development and commercializing semiconductor test products, none of which qualify for recognition as a separate intangible asset. We do not expect any portion of this goodwill to be deductible for tax purposes. The goodwill attributable to the acquisition was recorded as a non-current asset and is not amortized, but is subject to an annual review for impairment. </span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The goodwill arising from the acquisition was allocated to the HPD reporting unit within the Systems reportable segment. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have not presented unaudited combined pro forma financial information as the HPD acquisition was not significant to our consolidated results of operations and financial position.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Baldwin Park Acquisition </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On July 30, 2020, we acquired the probe card assets of Advantest Corporation for total cash consideration of $<ix:nonFraction unitRef="usd" contextRef="if72cec7ca3b342c2b044431e1d621082_D20200730-20200730" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationConsiderationTransferred1" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RleHRyZWdpb246ZWU0NGYxMDk2NGQzNDFjODg0YTg5NmIxZmEzZjkxMjhfMTA5OTUxMTY0NjMxOA_d8083647-8240-420e-95ad-f5edf9533ff5">35.0</ix:nonFraction> million. This acquisition brings important enabling technologies and capabilities for designing and manufacturing advanced probe cards, and adds a complementary 3D-NAND Flash probe-card product that is qualified and in production at one of the world's leading NAND Flash manufacturers.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The acquisition was accounted for using the acquisition method of accounting, with FormFactor treated as the acquirer. The acquired assets and liabilities of Baldwin Park were recorded at their respective fair values including an amount for goodwill representing the difference between the acquisition consideration and the fair value of the identifiable net assets. </span></div><div style="text-align:justify;text-indent:27pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Our Condensed Consolidated Statements of Income include the financial results of Baldwin Park subsequent to the acquisition date of July 30, 2020. Revenue related to Baldwin Park since the acquisition date that was included in our Condensed Consolidated Statements of Income for fiscal 2020 was not material. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">We estimated the acquisition price and the allocation of fair value to assets acquired and liabilities assumed as of the acquisition date, July 30, 2020. We subsequently made certain immaterial adjustments within the measurement period to the acquisition price allocation as a result of finalization of our valuation of identifiable assets and liabilities. See Note 5, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">Goodwill and Intangible Assets,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"> for changes in identified intangible values and goodwill. In the current quarter ended March&#160;27, 2021, we finalized our allocation of the assets acquired, including goodwill and intangibles, and liabilities assumed for the purchase as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><ix:continuation id="ib674d59bf54843c8abbf966242e15b3d"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:87.642%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.428%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount </span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfMS0yLTEtMS03NTA_b5e1a906-9d90-448b-b9b9-9c7a518edd0c">4,365</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventory</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfMi0yLTEtMS03NTA_a9a30d5c-9841-4fbe-9bd4-462082426f21">2,727</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant and equipment</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfMy0yLTEtMS03NTA_4ea5081c-15b5-4e09-93fe-a9392b2fab6b">9,053</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease, right of use assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730" decimals="-3" name="form:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfNC0yLTEtMS03NTA_8b920ba7-65df-48f7-bb95-d56d16dd62cd">519</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfNS0yLTEtMS03NTA_54d612b2-e0f5-4fd5-9f05-d25c8c75672f">56</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tangible assets acquired</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfNi0yLTEtMS03NTA_e2244c0e-8985-49d9-a9ca-28b5739d0b80">16,720</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable and accrued liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfNy0yLTEtMS03NTA_602a24c5-29d8-46a6-be05-168144792980">743</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfOC0yLTEtMS03NTA_d39f47cb-2b7b-40bd-ad15-1c93f3ed81f3">519</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total net tangible assets acquired and liabilities assumed</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfOS0yLTEtMS03NTA_d45c9aca-289e-4052-9013-722b264e69f2">15,458</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangible assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfMTAtMi0xLTEtNzUw_3c995c05-d1a6-4563-8a43-dfd03106ba7d">13,600</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfMTEtMi0xLTEtNzUw_96bcc025-3459-4fe3-ac17-ef02b3315ec4">5,942</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net assets acquired</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfMTItMi0xLTEtNzUw_9dfd2ac6-a232-44c1-8e1a-3c011fa4abeb">35,000</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:continuation></div></ix:continuation><div style="text-align:justify;text-indent:27pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">12</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="i8259a1af410940e4a63ef208cf01c701"><ix:continuation id="i3c44ab444dbd4332826ad40c120901f6"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The intangible assets as of July 30, 2020 included (in thousands): </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:67.174%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.969%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.280%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.347%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Weighted Average Useful Life (in years)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Developed technologies</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ide7271024d174ef18742760227df34bd_I20200730" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjdkZTY0OTY5YWU0NzQzMThhOGJkOTdkM2VjZmMzMWE2L3RhYmxlcmFuZ2U6N2RlNjQ5NjlhZTQ3NDMxOGE4YmQ5N2QzZWNmYzMxYTZfMS0yLTEtMS03NTA_818ac991-99d1-41d5-8cba-21523bfb7f63">8,800</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="icb2bd5aa7a2f46d3b6a4d845d24c4fe5_D20200730-20200730" format="ixt-sec:duryear" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjdkZTY0OTY5YWU0NzQzMThhOGJkOTdkM2VjZmMzMWE2L3RhYmxlcmFuZ2U6N2RlNjQ5NjlhZTQ3NDMxOGE4YmQ5N2QzZWNmYzMxYTZfMS00LTEtMS03NTA_b220aa37-5fd0-4611-813a-2fa5f77e05d2">10.0</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9e3864372b01457b867f40f1b99d5eb7_I20200730" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjdkZTY0OTY5YWU0NzQzMThhOGJkOTdkM2VjZmMzMWE2L3RhYmxlcmFuZ2U6N2RlNjQ5NjlhZTQ3NDMxOGE4YmQ5N2QzZWNmYzMxYTZfMi0yLTEtMS03NTA_888a5310-b14a-4cb9-943c-b35cfc749051">4,400</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i238eedca206d433f933f027051460d35_D20200730-20200730" format="ixt-sec:duryear" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjdkZTY0OTY5YWU0NzQzMThhOGJkOTdkM2VjZmMzMWE2L3RhYmxlcmFuZ2U6N2RlNjQ5NjlhZTQ3NDMxOGE4YmQ5N2QzZWNmYzMxYTZfMi00LTEtMS03NTA_d8d25ded-6950-4bd8-b75f-1c5c8a419a2c">3.0</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">In-process research and development</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i766bb25c58e7483198d84fccbdf59f49_I20200730" decimals="-3" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjdkZTY0OTY5YWU0NzQzMThhOGJkOTdkM2VjZmMzMWE2L3RhYmxlcmFuZ2U6N2RlNjQ5NjlhZTQ3NDMxOGE4YmQ5N2QzZWNmYzMxYTZfMy0yLTEtMS03NTA_3c7a65e8-7ea9-48ce-acbb-61d7a05a7a45">400</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">N/A</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total intangible assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjdkZTY0OTY5YWU0NzQzMThhOGJkOTdkM2VjZmMzMWE2L3RhYmxlcmFuZ2U6N2RlNjQ5NjlhZTQ3NDMxOGE4YmQ5N2QzZWNmYzMxYTZfNC0yLTEtMS03NTA_94c2f1d5-72bf-494e-92ba-afad29249760">13,600</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="if72cec7ca3b342c2b044431e1d621082_D20200730-20200730" format="ixt-sec:duryear" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjdkZTY0OTY5YWU0NzQzMThhOGJkOTdkM2VjZmMzMWE2L3RhYmxlcmFuZ2U6N2RlNjQ5NjlhZTQ3NDMxOGE4YmQ5N2QzZWNmYzMxYTZfNC00LTEtMS03NTA_a7c7f686-959e-4fa1-aa18-c8897fc3deb1">7.7</ix:nonNumeric></span></td></tr></table></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Indications of fair value of the intangible assets acquired in connection with the acquisition were determined using either the income, market or replacement cost methodologies. The intangible assets are being amortized over periods which reflect the pattern in which economic benefits of the assets are expected to be realized.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Identifiable Intangible Assets</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Valuation of intangible assets involves multiple assumptions. The key assumptions are described below.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Developed technology acquired consists of existing technology related to 3D NAND Flash probe cards and the value expected to be derived from interconnect technology. We valued the developed technology related to 3D NAND Flash using the multi-period excess earnings method under the income approach. Using this approach, the estimated fair values were calculated using expected future cash flows from specific products discounted to their net present values at an appropriate risk-adjusted rate of return. We valued the interconnect developed technology asset using the incremental cash flow method. This method estimates value based on the incremental cash flow afforded by having the interconnect capability in place on the acquisition date versus having no capability in place and needing to replicate or replace that capability. The incremental cash flows are then discounted to a present value to arrive at an estimate of fair value for this asset class.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In-process research and development (&#8220;IPR&amp;D&#8221;) acquired primarily consists of research and development projects that were in process at the time of acquisition related to technologies used in DRAM probe cards. Once these projects are complete they will be amortized over their useful life. We valued the IPR&amp;D using the multi-period excess earnings method under the income approach. Using this approach, the estimated fair values were calculated using expected future cash flows from specific products discounted to their net present values at an appropriate risk-adjusted rate of return. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The value of customer relationships represents the fair value of future projected revenues that will be derived from the sale of products to Baldwin Park's existing customers. We valued customer relationships using the incremental cash flow method. This method estimates value based on the incremental cash flow afforded by having the customers relationships in place on the acquisition date versus having no relationships in place and needing to replicate or replace those relationships. The incremental cash flows are then discounted to a present value to arrive at an estimate of fair value for this asset class.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Goodwill</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The excess of purchase price over the fair value assigned to the assets acquired and liabilities assumed represents the amount of goodwill resulting from the acquisition. We believe the factors that contributed to goodwill include synergies that are specific to our consolidated business, such as cost savings and operational efficiencies, and the acquisition of a talented workforce that expands our expertise in business development, none of which qualify for recognition as a separate intangible asset. We expect this goodwill to be deductible for tax purposes. The goodwill attributable to the acquisition was recorded as a non-current asset and is not amortized, but is subject to an annual review for impairment. </span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The goodwill arising from the acquisition was allocated to the Probe Cards reporting unit within the Probe Cards reportable segment. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have not presented unaudited combined pro forma financial information as the Baldwin Park acquisition was not significant to our consolidated results of operations and financial position.</span></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">13</span></div></div></div><div id="i9c89e3d57c9546d7826f58de281429d9_46"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 5</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#8212; <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:IntangibleAssetsDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RleHRyZWdpb246MDMyYTU3YWMwYTVlNDEwMWE0Yzg0YmQxNjc3Njc1MDZfNjUz_82f3c9a0-e080-49e9-b6e4-1735e1e329a6" continuedAt="ib8c59beed49a4752b0017afa7bd5a0ba" escape="true">Goodwill and Intangible Assets </ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="ib8c59beed49a4752b0017afa7bd5a0ba"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ScheduleOfGoodwillTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RleHRyZWdpb246MDMyYTU3YWMwYTVlNDEwMWE0Yzg0YmQxNjc3Njc1MDZfNjU0_1498206f-1ce8-472d-a815-9633b21c4537" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Goodwill by reportable segment was as follows (in thousands):</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:60.157%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.331%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Probe Cards</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Systems</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Goodwill, gross, as of December 28, 2019</span></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5fbe358d1fba4d15802003da152cabe5_I20191228" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMS0yLTEtMS0w_4dc321e7-c48c-4c52-b817-5b78cc0f2275">172,482</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i16d1465663cf4181b88e262e919eac34_I20191228" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMS00LTEtMS0w_374baa2b-89e3-4e02-b6eb-7ba105080f83">26,714</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1eeff05d49e94a6396339ea847351869_I20191228" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMS02LTEtMS0w_105cc8d9-186e-454a-b4c3-c0f51c53b641">199,196</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Addition - FRT GmbH Acquisition</span></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib5ea062f3a074d648ba1fc7f52535528_D20191229-20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMi0yLTEtMS0w_b101f82d-9953-4584-85bf-c4dd0579d418">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if1b23dd6933f4e889c4bb707850bc3be_D20191229-20201226" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMi00LTEtMS0w_06080405-cb84-4d5d-a71d-95cb2a26b517">975</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i766fc09da35840daa1048417dec5b977_D20191229-20201226" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMi02LTEtMS0w_2ffc40f8-aedd-4661-b038-109603f1d263">975</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Addition - Baldwin Park Acquisition</span></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie80f2e2beded4af1a1f243fd65dc297b_D20191229-20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMy0yLTEtMS04Mw_e707e332-9c41-4067-8377-b41ed1cb82f0">5,590</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i82b5853bb17a42078ac2a333aeb2bed1_D20191229-20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMy00LTEtMS04Mw_bc25af7f-0b32-42bc-9893-cb04d5e19246">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i49fc19518314461bae583bb4132265b7_D20191229-20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMy02LTEtMS04Mw_19d0440c-8df7-40d5-ab2a-4dd86ba3f657">5,590</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Addition - HPD Acquisition</span></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i854854c15af54644af4470da171a27fd_D20191229-20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNC0yLTEtMS04Mw_9b140596-2fd0-48aa-8f70-626849ff6578">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idb30b39ef576445dabd0e0388c84f91f_D20191229-20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNC00LTEtMS04Mw_1bd58abb-4a3e-4a1b-be8d-720f6af70219">4,654</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8fd0f82133594c9bb92ea3b28d516c49_D20191229-20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNC02LTEtMS04Mw_3989d1fc-b939-40a8-8262-2f9d80737fab">4,654</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign currency translation</span></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6e37b691b2884ea28ca42c1218b34265_D20191229-20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMy0yLTEtMS0w_85193ac6-474c-483c-89f3-026ac9d7616c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ca8f2c536d640d5bbafd309bf860ebe_D20191229-20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMy00LTEtMS0w_09635264-e02f-4cba-a858-c1e6fdae9a99">2,346</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icbf0d7ae2be742f18f08ffe120d98cd4_D20191229-20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMy02LTEtMS0w_8f8fbe2d-5bec-47ac-9e4d-09fde620ecfa">2,346</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Goodwill, gross, as of December 26, 2020</span></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i619d2f5efcc04d5787337604033fed50_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNC0yLTEtMS0w_88962574-aed6-44e7-b4a1-f8f87e1ec5c9">178,072</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5dccd17e17534cb18864a0ff1fdc068f_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNC00LTEtMS0w_34a23421-fd0d-41f1-bf0d-5d5392ec9f7e">34,689</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNC02LTEtMS0w_96fa348f-af8f-4513-b13f-fe55a3889cb9">212,761</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Addition - Baldwin Park Acquisition</span></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i48f3d16ebc514c6ebfdeca8868c3a584_D20201227-20210327" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNS0yLTEtMS0w_71b8f011-3d67-4d06-88f1-0d2c35213005">352</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><ix:nonFraction unitRef="usd" contextRef="i145115c47a3c41fc84edd572945de66b_D20201227-20210327" xsi:nil="true" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNS00LTEtMS0w_247715b4-dfff-4ac9-bfe1-906964d7577d"></ix:nonFraction></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idcc1dd5d0e904069951eb9d57880afab_D20201227-20210327" decimals="-3" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNS02LTEtMS0w_982c34a7-cf08-4f1f-812f-41fd07845561">352</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Addition - HPD Acquisition</span></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibec0ba8b66c74d83972365b461b6652f_D20201227-20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNi0yLTEtMS0w_1b51857a-2f1e-4a45-bcdf-810c04f96d93">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i68179e3b41cc4cb58d394c315b7e924d_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNi00LTEtMS0w_1f389d21-8d0b-4d16-8a18-d39d6eabe353">2,011</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieab7c0ab187d444c939db25d53fe740e_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GoodwillAcquiredDuringPeriod" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNi02LTEtMS0w_cd0e8fed-b1df-426b-bec1-f8721b9e759b">2,011</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign currency translation</span></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7e83c001dbc94677a59ca9c262df771e_D20201227-20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNy0yLTEtMS0w_26d7f5e8-c247-4594-b3c3-a71e610dc075">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id7ca4f9333334d088e8e33a90870e029_D20201227-20210327" decimals="-3" sign="-" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNy00LTEtMS0w_388dfc60-0970-4d82-9041-d87ba2069b82">906</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" sign="-" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNy02LTEtMS0w_cad46ca8-a12a-4755-8ee0-0dc22db9869b">906</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Goodwill, gross, as of March 27, 2021</span></td><td colspan="3" style="display:none"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icc685b74f6e64416a016dc848f1e2524_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfOC0yLTEtMS0w_f77ee810-b3c3-4619-9c36-799fc3fd9a03">178,424</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i440894a76a544ec0a0423734205ccc41_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfOC00LTEtMS0w_4182eed3-8c21-467e-b627-9c7626064912">35,794</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfOC02LTEtMS0w_648d904b-7ca0-4f63-841f-91aabe295ff0">214,218</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="text-indent:18pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have <ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:GoodwillImpairmentLoss" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RleHRyZWdpb246MDMyYTU3YWMwYTVlNDEwMWE0Yzg0YmQxNjc3Njc1MDZfNTQ5NzU1ODE0MDI2OQ_be43b079-20ed-4ef3-b245-fdcd11d37411">no</ix:nonFraction>t recorded goodwill impairments for the three months ended March&#160;27, 2021.</span></div><div style="text-align:justify"><span><br/></span></div><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RleHRyZWdpb246MDMyYTU3YWMwYTVlNDEwMWE0Yzg0YmQxNjc3Njc1MDZfNjgx_cd5cd687-99dd-4df3-a75d-46e5f91ab2ab" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Intangible assets were as follows (in thousands): </span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:27.847%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.018%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27, 2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 26, 2020</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Intangible Assets </span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Developed technologies </span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifa0ef42d3e7c4271a02b2b18c7f35368_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMi0yLTEtMS0w_5effb786-f2b2-4f41-b341-acc295fb7563">173,318</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifa0ef42d3e7c4271a02b2b18c7f35368_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMi00LTEtMS0w_462bf35f-d65b-44b5-8450-3aef3328f1fd">142,344</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifa0ef42d3e7c4271a02b2b18c7f35368_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMi02LTEtMS0w_34fb342f-61e5-47f6-901b-83b493ad7509">30,974</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iecc90425d12643a18c349e91c410c441_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMi04LTEtMS0w_99de0872-9379-466e-a494-5e774388be7a">176,265</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iecc90425d12643a18c349e91c410c441_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMi0xMC0xLTEtMA_053ecb2c-9010-4bd7-a1e3-8c574f24bb7f">137,754</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iecc90425d12643a18c349e91c410c441_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMi0xMi0xLTEtMA_8f080c67-825f-499a-8f8a-ca10b2bdcb7b">38,511</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Trade names</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifeb7f6443c044ccc90725224ce7d04c4_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMy0yLTEtMS0w_43614fda-9477-484f-af90-715ba4efeeb2">8,100</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifeb7f6443c044ccc90725224ce7d04c4_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMy00LTEtMS0w_dbdc61de-e0c1-4691-8ff3-36cc010d66c0">7,418</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifeb7f6443c044ccc90725224ce7d04c4_I20210327" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMy02LTEtMS0w_00f6813e-48d6-4ec5-8e48-349d16151199">682</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic403daa15d7b47ce9cd798fbea57a31a_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMy04LTEtMS0w_2c749fbd-d257-4d33-ad66-a5c652e63c63">8,162</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic403daa15d7b47ce9cd798fbea57a31a_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMy0xMC0xLTEtMA_a99710b5-edd2-463c-b21c-3a6ddd2557b0">7,363</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic403daa15d7b47ce9cd798fbea57a31a_I20201226" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMy0xMi0xLTEtMA_1f4083d1-c013-4cc2-a3c4-06d7134afa0d">799</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7bedb36b172349739dacb4c49e918974_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNC0yLTEtMS0w_a7b823ba-370e-413c-9dad-6ed6415f664c">51,557</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7bedb36b172349739dacb4c49e918974_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNC00LTEtMS0w_f95e697f-8adf-4e7d-b033-fe9ba2633d1e">34,899</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7bedb36b172349739dacb4c49e918974_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNC02LTEtMS0w_ea7c723b-85f5-445e-938d-78303cea0d37">16,658</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ica1dbc1b460944e481d011c33fd38539_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNC04LTEtMS0w_264ceea9-3d72-4a73-a18e-ec25de8f87d2">52,488</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ica1dbc1b460944e481d011c33fd38539_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNC0xMC0xLTEtMA_ca877614-3e2d-497a-a485-434aadaf74ea">33,378</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ica1dbc1b460944e481d011c33fd38539_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNC0xMi0xLTEtMA_540145db-1675-4fe7-85bd-e03753b41d34">19,110</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Backlog</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3b84a14f3fb74e3cb977339c721078b8_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNS0yLTEtMS0w_64f201af-0f56-4183-9b78-b43a02b9a678">1,969</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3b84a14f3fb74e3cb977339c721078b8_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNS00LTEtMS0w_5bf5213e-0ed3-408d-a5dc-1e881b838a6f">1,897</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3b84a14f3fb74e3cb977339c721078b8_I20210327" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNS02LTEtMS0w_971dd021-bc63-4045-b276-8357b8452adb">72</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i85e30e59906a44f59ba583be2d3605a0_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNS04LTEtMS0w_a3c7dd1c-1f17-4384-9fd2-bac0c49cff1a">2,227</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i85e30e59906a44f59ba583be2d3605a0_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNS0xMC0xLTEtMA_1fb71ef9-d758-48bd-bad9-cb92785124fe">1,900</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i85e30e59906a44f59ba583be2d3605a0_I20201226" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNS0xMi0xLTEtMA_e5aaab7b-210c-4faa-99c1-5a1db444f813">327</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">In-process research and development</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4bc8eb7c629f4a2480195a0322e38b58_I20210327" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi0yLTEtMS02NDQ_3a0865fc-2c4b-4504-a1e1-ad77afe66fd6">400</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4bc8eb7c629f4a2480195a0322e38b58_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi00LTEtMS02NDQ_d35a836c-0855-466d-8e5c-baddae72ac8d">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4bc8eb7c629f4a2480195a0322e38b58_I20210327" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi02LTEtMS02NDQ_4a117e88-3e7d-4791-92b8-935ea30a07e8">400</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5ce2f0f934674931972c4ef6efa9f7db_I20201226" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi04LTEtMS02NDQ_119724bf-f875-4830-bd77-a40573c2f3bd">400</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5ce2f0f934674931972c4ef6efa9f7db_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi0xMC0xLTEtNjQ0_6749862b-eb77-4833-ade7-8f1359bdcdb0">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5ce2f0f934674931972c4ef6efa9f7db_I20201226" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi0xMi0xLTEtNjQ0_2faa891b-c732-469b-bf60-0719bcb125de">400</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi0yLTEtMS0w_188f05fa-37c3-4513-9fff-524bf58ad94e">235,344</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi00LTEtMS0w_3c6a0028-05c9-48df-a4cd-61a0e102df75">186,558</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi02LTEtMS0w_5facf1b6-f561-4ec0-ba30-9dfea46a7cc9">48,786</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi04LTEtMS0w_9cf5fa78-f5be-4b5e-9c02-9d5a1b90281d">239,542</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi0xMC0xLTEtMA_d16a6c90-c3f0-4ad5-a7d8-941659998026">180,395</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi0xMi0xLTEtMA_d7ad6347-823f-41d9-8b81-46e2c9aae846">59,147</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RleHRyZWdpb246MDMyYTU3YWMwYTVlNDEwMWE0Yzg0YmQxNjc3Njc1MDZfNjU3_ef8112a9-50e8-4d86-95cd-585b932e1940" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortization expense was included in our Condensed Consolidated Statements of Income as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.315%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.329%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0d1ea4fd763a46b5a3950b317c8ffaaf_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AmortizationOfIntangibleAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjE5NTUxYTU5MTk3ZDQ3YzA4MDYyNTQwZTIyMjNjNTUwL3RhYmxlcmFuZ2U6MTk1NTFhNTkxOTdkNDdjMDgwNjI1NDBlMjIyM2M1NTBfMi0xLTEtMS0w_22129f7d-3fe1-453b-bd1f-1d5a23ace20b">5,090</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i58b6c2d1e0654942851c8b0deb45c8eb_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AmortizationOfIntangibleAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjE5NTUxYTU5MTk3ZDQ3YzA4MDYyNTQwZTIyMjNjNTUwL3RhYmxlcmFuZ2U6MTk1NTFhNTkxOTdkNDdjMDgwNjI1NDBlMjIyM2M1NTBfMi0zLTEtMS0w_8c092640-60a3-4ebc-ac68-cfef6770aedf">5,750</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Selling, general and administrative</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iefe5e641875c47c38077d9787aeda6d1_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AmortizationOfIntangibleAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjE5NTUxYTU5MTk3ZDQ3YzA4MDYyNTQwZTIyMjNjNTUwL3RhYmxlcmFuZ2U6MTk1NTFhNTkxOTdkNDdjMDgwNjI1NDBlMjIyM2M1NTBfMy0xLTEtMS0w_5d9e8f41-895b-40e1-856c-28a44f43938f">1,715</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i827c2859272f46d1af6b076a94267ac8_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AmortizationOfIntangibleAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjE5NTUxYTU5MTk3ZDQ3YzA4MDYyNTQwZTIyMjNjNTUwL3RhYmxlcmFuZ2U6MTk1NTFhNTkxOTdkNDdjMDgwNjI1NDBlMjIyM2M1NTBfMy0zLTEtMS0w_c519dd17-5472-4851-a7d0-503716b31981">1,513</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AmortizationOfIntangibleAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjE5NTUxYTU5MTk3ZDQ3YzA4MDYyNTQwZTIyMjNjNTUwL3RhYmxlcmFuZ2U6MTk1NTFhNTkxOTdkNDdjMDgwNjI1NDBlMjIyM2M1NTBfNC0xLTEtMS0w_1ece35ee-d365-47df-8627-4c1ecbc84305">6,805</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AmortizationOfIntangibleAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjE5NTUxYTU5MTk3ZDQ3YzA4MDYyNTQwZTIyMjNjNTUwL3RhYmxlcmFuZ2U6MTk1NTFhNTkxOTdkNDdjMDgwNjI1NDBlMjIyM2M1NTBfNC0zLTEtMS0w_5b7f5ae3-6985-4c74-a7d9-53efed5c5684">7,263</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RleHRyZWdpb246MDMyYTU3YWMwYTVlNDEwMWE0Yzg0YmQxNjc3Njc1MDZfNjYy_32dea7eb-f147-4c03-8c4d-7d99be3f7949" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The estimated future amortization of definite-lived intangible assets, excluding in-process research and development, is as follows (in thousands): </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:86.473%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.327%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fiscal Year</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Remainder of 2021</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOmFhNTA1NDEzMzNhMjRiYTI4MjhkODM3ODgwZTliZWU3L3RhYmxlcmFuZ2U6YWE1MDU0MTMzM2EyNGJhMjgyOGQ4Mzc4ODBlOWJlZTdfMS0yLTEtMS0w_e7d28fe1-ce61-416c-9bcd-6eca5e78e594">11,933</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2022</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOmFhNTA1NDEzMzNhMjRiYTI4MjhkODM3ODgwZTliZWU3L3RhYmxlcmFuZ2U6YWE1MDU0MTMzM2EyNGJhMjgyOGQ4Mzc4ODBlOWJlZTdfMi0yLTEtMS0w_892ee693-5135-40bb-bdc6-c7e4b93d8a59">9,591</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2023</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOmFhNTA1NDEzMzNhMjRiYTI4MjhkODM3ODgwZTliZWU3L3RhYmxlcmFuZ2U6YWE1MDU0MTMzM2EyNGJhMjgyOGQ4Mzc4ODBlOWJlZTdfMy0yLTEtMS0w_329cc13d-6571-4f81-aa05-1612d533cab0">7,240</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOmFhNTA1NDEzMzNhMjRiYTI4MjhkODM3ODgwZTliZWU3L3RhYmxlcmFuZ2U6YWE1MDU0MTMzM2EyNGJhMjgyOGQ4Mzc4ODBlOWJlZTdfNC0yLTEtMS0w_cabd7b39-113e-4b45-85ae-eeb997ae813b">4,625</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOmFhNTA1NDEzMzNhMjRiYTI4MjhkODM3ODgwZTliZWU3L3RhYmxlcmFuZ2U6YWE1MDU0MTMzM2EyNGJhMjgyOGQ4Mzc4ODBlOWJlZTdfNS0yLTEtMS0w_d9a59781-4a64-48e1-b2c5-88f2e55a70b4">4,364</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="form:FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOmFhNTA1NDEzMzNhMjRiYTI4MjhkODM3ODgwZTliZWU3L3RhYmxlcmFuZ2U6YWE1MDU0MTMzM2EyNGJhMjgyOGQ4Mzc4ODBlOWJlZTdfNi0yLTEtMS0w_32ac94b1-681f-4f41-af28-d4eca0fb8e7f">10,633</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="form:FiniteLivedIntangibleAssetsAmortizationExpenseTotal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOmFhNTA1NDEzMzNhMjRiYTI4MjhkODM3ODgwZTliZWU3L3RhYmxlcmFuZ2U6YWE1MDU0MTMzM2EyNGJhMjgyOGQ4Mzc4ODBlOWJlZTdfNy0yLTEtMS0w_81827dc7-b3e6-4a2f-b3a0-3e72f733f4a6">48,386</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="text-align:justify"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">14</span></div></div></div><div id="i9c89e3d57c9546d7826f58de281429d9_52"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 6</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#8212; <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RleHRyZWdpb246MDYzZWNmYTI1OTBkNGQyMmJjNGQyZjQwOGQzM2NlODJfOTk_3a31614d-2502-47f2-8341-d436a5379f96" continuedAt="i926774ab0fc44ad9aa0db1f17cb049f5" escape="true">Accrued Liabilities</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="i926774ab0fc44ad9aa0db1f17cb049f5"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RleHRyZWdpb246MDYzZWNmYTI1OTBkNGQyMmJjNGQyZjQwOGQzM2NlODJfMTA2_a2c8e67c-7217-4dbf-ba14-a8b8952d89ec" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued liabilities consisted of the following (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.315%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.329%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 26,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued compensation and benefits</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfMS0xLTEtMS0w_871ceb5b-8ef4-4f01-868a-22c9797e1b08">28,092</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfMS0zLTEtMS0w_efa07ec6-dfce-4e14-85bc-059b597187f5">33,110</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued income and other taxes</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:TaxesPayableCurrentAndNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfMi0xLTEtMS0w_fa455e91-19e9-4eee-ac56-1eb48ca47c17">3,008</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:TaxesPayableCurrentAndNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfMi0zLTEtMS0w_67d720c1-113e-444a-82e4-f42ba2ca8b4a">6,976</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued warranty</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfMy0xLTEtMS0w_db6cd5be-fb75-4b3a-b3b8-4dfa783a0dac">3,719</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrualClassifiedCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfMy0zLTEtMS0w_e9a6b303-0a94-4e53-b7f0-89b93528619c">3,918</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Employee stock purchase plan contributions withheld</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedEmployeeBenefitsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfNC0xLTEtMS0w_f3ff6b4f-246c-46d8-a57f-22b79db4a145">2,109</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedEmployeeBenefitsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfNC0zLTEtMS0w_9ac15544-65f2-4bd0-aa46-382527930bcf">4,240</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued contingent consideration </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationContingentConsiderationLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfNS0xLTEtMS0w_1d2ab02c-424f-4005-84e9-7722ab33418b">3,884</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationContingentConsiderationLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfNS0zLTEtMS0w_35f392a5-99d3-40a6-bbea-15171ee56f6a">4,012</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other accrued expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherAccruedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfNi0xLTEtMS0w_41029a03-d780-485f-add1-e7beba9d50a7">2,656</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OtherAccruedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfNi0zLTEtMS0w_c533728e-feae-4dc5-b019-a461b8a4a9ad">3,086</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfNy0xLTEtMS0w_f20e359d-a8e3-4a64-a433-9f1b02fdc1a2">43,468</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccruedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfNy0zLTEtMS0w_da4f9fef-ffac-4096-8313-f69125d17c22">55,342</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div id="i9c89e3d57c9546d7826f58de281429d9_55"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 7 &#8212; <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:FairValueDisclosuresTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfODA3MQ_6a0211c9-287f-4024-98c6-26680d0a775b" continuedAt="i00e741b27ecf4c26938bffc858d11ea2" escape="true">Fair Value and Derivative Instruments</ix:nonNumeric></span></div><div style="text-align:justify"><span><br/></span></div><ix:continuation id="i00e741b27ecf4c26938bffc858d11ea2" continuedAt="ic67b99ea84e34d129335e0b1818c9f59"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:FairValueMeasurementPolicyPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfODA3OQ_8774f8db-6b7d-493f-8649-c1090bee5b3f" continuedAt="i0529aafbc9b143c7815444bc11abf273" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Whenever possible, the fair values of our financial assets and liabilities are determined using quoted market prices of identical securities or quoted market prices of similar securities from active markets. The three levels of inputs that may be used to measure fair value are as follows:</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 1 valuations are obtained from real-time quotes for transactions in active exchange markets involving identical securities;</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 2 valuations utilize significant observable inputs, such as quoted prices for similar assets or liabilities, quoted prices near the reporting date in markets that are less active, or other inputs that are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities; and</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 3 valuations utilize unobservable inputs to the valuation methodology and include our own data about assumptions market participants would use in pricing the asset or liability based on the best information available under the circumstances.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We did not have any transfers of assets or liabilities measured at fair value on a recurring basis to or from Level 1, Level 2 or Level 3 during the three months ended March&#160;27, 2021 or the year ended December&#160;26, 2020.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The carrying values of Cash, Accounts receivable, net, Restricted cash, Prepaid expenses and other current assets, Accounts payable, Accrued liabilities, and term loans, net of unamortized issuance costs, approximate fair value due to their short maturities. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">No changes were made to our valuation techniques during the first three months of fiscal 2021.</span></div></ix:nonNumeric></ix:continuation><div style="text-align:justify"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">15</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="ic67b99ea84e34d129335e0b1818c9f59" continuedAt="i92ce0681c3b94415bc6b9d3d7987fc2e"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Assets and Liabilities Measured at Fair Value on a Recurring Basis</span></div><div style="text-align:justify"><span><br/></span></div><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfODA3NA_ffd4f8d8-4f2f-41b3-90b8-2a13fe299c87" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Assets and liabilities measured at fair value on a recurring basis were as follows (in thousands):&#160;</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:46.036%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.385%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27, 2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Level 1</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Level 2</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Level 3</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Assets:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash equivalents:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Money market funds</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i83382e7d2c8b4fabb2db33d207dfb366_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMy0yLTEtMS0w_7d001050-4f4f-447b-95e8-7b249252fcf8">34,254</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if17228f003c047758a39294ad5ba5d27_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMy00LTEtMS0w_1cc1e233-d197-4b38-ab91-2a8d8085efbd">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8c9ac72027b144dcb23e62669dfd6195_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMy02LTEtMS0w_e3a7b459-fdb8-4162-8f32-272707322b44">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia598581b10a74d18bada3c46855fa52b_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMy04LTEtMS0w_ca2584cf-44d0-4a93-9c0a-36688a1f9779">34,254</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Commercial paper</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic9f7e7ae347849c5b4e45cc4c1175466_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfNC0yLTEtMS0w_8f3fb74d-c8cd-4088-a80f-a2e640618a3b">5,500</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i145f335ea1fb463a8fc222c84ac94981_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfNC00LTEtMS0w_db8cac6d-bada-46ee-8e17-591ba3ac7c60">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4f967f58aa1640f0b24801437f5fe982_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfNC02LTEtMS0w_9e8eebdf-3643-419b-aecf-a583c813bbd3">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie3f11bbb05014b3a83067a076d211d97_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfNC04LTEtMS0w_43f02242-5c51-436d-9284-46a6c6a9122d">5,500</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt 0 25.75pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7885f9de272c46a38898e5b2b6cbeadd_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfNi0yLTEtMS0w_1c75e22b-f017-4686-a344-bf1a53344436">39,754</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7144b8981c9b457781eb7907f050e5f1_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfNi00LTEtMS0w_f2342e31-41e3-4719-bcbd-174903ff6910">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5a9be7cee5ec4fd9be9fa2e73eff96cf_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfNi02LTEtMS0w_8718298a-b1b0-4b1c-9d2b-f4ccb2ad95ba">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfNi04LTEtMS0w_7c0e9b81-e7d8-4470-9b8c-fac2a677aaef">39,754</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Marketable securities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;U.S. treasuries</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6247d6e9647449e09fed7cab29b95aae_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfOC0yLTEtMS0w_be35af23-d57b-4861-86bb-3f8040d5ea48">32,669</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9419dfa20588499f825ec3b1b3519791_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfOC00LTEtMS0w_432ea496-f3cc-4eb3-8729-3213fa149647">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibd52566f15684ea5b8dc2aa32c37242e_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfOC02LTEtMS0w_744348af-4626-4796-bbf6-866de5496cbb">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i89ef81a9020d44ecb89f4714a761bab6_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfOC04LTEtMS0w_58ed461b-02ee-43e5-bb5e-44dbbf78c30b">32,669</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Certificates of deposit</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i93d3ad69b7fb46b0a4b4748efdc779b4_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfOS0yLTEtMS0w_5dddf543-d6ec-4652-98e5-2779b21ec1a4">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5e32dcdbcf724b128e337737e3527dab_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfOS00LTEtMS0w_8da04d7c-7cd5-4e9c-a738-f0c8bd1c90c5">1,212</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id9361ecbb0904810b3b071f12fda23ff_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfOS02LTEtMS0w_6dc24fd8-efa8-4587-955b-0af14b833a63">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifdb56f2ebd8041eaa7de2d28e2d7d79c_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfOS04LTEtMS0w_0cefab16-cdaf-499f-b2f6-e3f5adb88bc7">1,212</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;U.S. agency securities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0012f13b69834e1a862520ec5f44fed2_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTAtMi0xLTEtMA_f3df6244-5f05-49e3-a23b-ee8924eef5e4">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7bea863d5baf4ad69c8218ba4f322c22_I20210327" decimals="-3" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTAtNC0xLTEtMA_3431c455-9828-460d-acc0-132a22f80c1a">575</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib7dec811e88d4655b3519f0d1713cc26_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTAtNi0xLTEtMA_7d206f3e-6c44-4a94-9815-67f6dc8174bf">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iac59b73a86d648b3aabedd57b6040b04_I20210327" decimals="-3" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTAtOC0xLTEtMA_ef8e710d-d832-4369-90f0-6ba4ee10b9a5">575</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Corporate bonds</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9a62e1daa19e43afad5bc9f161785331_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTEtMi0xLTEtMA_5ef0e1fc-7a38-4cee-9b6f-81dd49b4af3d">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if182b9d1747c4455ab48ec0820db5ba1_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTEtNC0xLTEtMA_5e593863-d186-4a57-a293-0af191845a4d">44,146</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ife64508f4e4e4720b46c14af9cd0f17b_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTEtNi0xLTEtMA_109d3951-dbdb-411a-a8c9-debf416a4424">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib02d06d5d50544ad87c8183e83c4cfd9_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTEtOC0xLTEtMA_72dd7d0b-a917-440c-b8a2-d4da43b1fe24">44,146</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Commercial paper</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic9f7e7ae347849c5b4e45cc4c1175466_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTItMi0xLTEtMA_0f5aa7b4-0f67-4c80-9289-d9017e26a606">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i145f335ea1fb463a8fc222c84ac94981_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTItNC0xLTEtMA_dd5df3f4-c6bc-43bb-b9f0-7ff044904bc7">15,491</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4f967f58aa1640f0b24801437f5fe982_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTItNi0xLTEtMA_ac3e7e55-e162-4dbd-9698-c019834ef1ff">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie3f11bbb05014b3a83067a076d211d97_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTItOC0xLTEtMA_662285fb-3efa-4973-8125-9e12f72320c5">15,491</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt 0 7.75pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7885f9de272c46a38898e5b2b6cbeadd_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTMtMi0xLTEtMA_bfc7457d-14d7-4415-811f-c338e48f7bc4">32,669</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7144b8981c9b457781eb7907f050e5f1_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTMtNC0xLTEtMA_db7a6a52-e8c3-4561-b92c-9896e508b1e7">61,424</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5a9be7cee5ec4fd9be9fa2e73eff96cf_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTMtNi0xLTEtMA_d511edd5-d69c-4c3d-bc13-75025cd26e30">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTMtOC0xLTEtMA_05295a77-f15a-4bc8-875a-4e932893ea68">94,093</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign exchange derivative contracts (Designated)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia1f273bac97240f89bdc17a0e9c60164_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:DerivativeAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTQtMi0xLTEtMA_2a0c5f84-ba98-45f7-9df4-c117572dca19">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i199d8012cdfc45f880bde4f62358b733_I20210327" decimals="-3" name="us-gaap:DerivativeAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTQtNC0xLTEtMA_c1dd804c-fef2-409a-b096-d354014f6ea8">144</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibfaae59a324f4a38ac0390337ca133de_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:DerivativeAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTQtNi0xLTEtMA_d487e497-9337-4d08-b925-4827f5fcc9f6">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i48299e9912ad4118b96449675e783bd4_I20210327" decimals="-3" name="us-gaap:DerivativeAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTQtOC0xLTEtMA_6b653ce0-c226-4ff4-9985-45621fa4a7fb">144</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest rate swap derivative contracts</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib26f1c31bfed44a7b777060c7786edb4_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:DerivativeAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTUtMi0xLTEtMA_81339a33-0af9-4a8a-94c0-468eb6c916be">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6fdc49bfe5094822b84e50642838474e_I20210327" decimals="-3" name="us-gaap:DerivativeAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTUtNC0xLTEtMA_96c5fcec-ca13-40c2-bd5f-20ba013b115c">745</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i342792ee749a494da9570345238082da_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:DerivativeAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTUtNi0xLTEtMA_ea2901e9-eb15-47d7-ad3b-68d897455c4d">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i13a31abba8c54278b30c172e00b5f42e_I20210327" decimals="-3" name="us-gaap:DerivativeAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTUtOC0xLTEtMA_2fd8a81d-7376-4518-bfdd-a384216a19d4">745</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7885f9de272c46a38898e5b2b6cbeadd_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AssetsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTYtMi0xLTEtMA_55c7c279-ce38-4cc6-8067-17a73393658a">72,423</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7144b8981c9b457781eb7907f050e5f1_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AssetsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTYtNC0xLTEtMA_fdcdf2d6-c733-4064-adce-04836c59f3d9">62,313</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5a9be7cee5ec4fd9be9fa2e73eff96cf_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:AssetsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTYtNi0xLTEtMA_0c4210b0-f031-441f-a859-1b28799d1e63">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AssetsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTYtOC0xLTEtMA_470a8a45-cb22-4a14-abc9-dc79501462ed">134,736</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign exchange derivative contracts (Designated)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifb9953b260ae40838020fbaa3bc54a54_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:DerivativeLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTgtMi0xLTEtMA_064dfbe1-1548-420f-9515-48483d58005a">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9346c5eb2b00412bbf91703e9e24c1b6_I20210327" decimals="-3" name="us-gaap:DerivativeLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTgtNC0xLTEtMA_705577a7-469b-474f-a579-4f4c63cebc33">100</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icaf47150e8b64314ac28c470e9ff45b2_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:DerivativeLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTgtNi0xLTEtMA_6fa295f0-c013-4b11-b2f6-f9f0d16e2f6b">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic8892fcf21d648e986b95d0d8a8b1378_I20210327" decimals="-3" name="us-gaap:DerivativeLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTgtOC0xLTEtMA_e1e8bfa3-479f-4e4f-b7e9-103ccc7d498a">100</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest rate swap derivative contracts</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib26f1c31bfed44a7b777060c7786edb4_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:DerivativeLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTktMi0xLTEtMA_1144f209-9089-4d52-a7eb-cc5cd2549e1a">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6fdc49bfe5094822b84e50642838474e_I20210327" decimals="-3" name="us-gaap:DerivativeLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTktNC0xLTEtMA_41dc64af-54cf-4a1e-bd09-ccfbb4c423b9">113</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i342792ee749a494da9570345238082da_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:DerivativeLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTktNi0xLTEtMA_3a6f7632-88be-4f96-b94a-45d68afd4d23">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i13a31abba8c54278b30c172e00b5f42e_I20210327" decimals="-3" name="us-gaap:DerivativeLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTktOC0xLTEtMA_d3c5c145-ac7a-43f5-8bc7-9ebc31be5fbe">113</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Contingent consideration</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7885f9de272c46a38898e5b2b6cbeadd_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:BusinessCombinationContingentConsiderationLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMjAtMi0xLTEtMA_e5c53794-0de0-4491-a88a-7dd9451eac04">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7144b8981c9b457781eb7907f050e5f1_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:BusinessCombinationContingentConsiderationLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMjAtNC0xLTEtMA_323ea2e1-d32c-42e0-90b8-d4fd504a33d5">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i5a9be7cee5ec4fd9be9fa2e73eff96cf_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationContingentConsiderationLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMjAtNi0xLTEtMA_ca6ef502-2998-46ce-9692-6a032406a96c">3,884</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationContingentConsiderationLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMjAtOC0xLTEtMA_9b9e147d-a2c4-4d18-9af2-169a729f6d39">3,884</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7885f9de272c46a38898e5b2b6cbeadd_I20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:LiabilitiesFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMjEtMi0xLTEtMA_93e5efd7-ed2b-4334-926f-b3042c77dbda">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i7144b8981c9b457781eb7907f050e5f1_I20210327" decimals="-3" name="us-gaap:LiabilitiesFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMjEtNC0xLTEtMA_03d664a1-c6cc-4d03-8563-ef6ccdfa6747">213</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i5a9be7cee5ec4fd9be9fa2e73eff96cf_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMjEtNi0xLTEtMA_63a687ba-b3e7-48e8-bc54-e7175ffb8db0">3,884</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMjEtOC0xLTEtMA_8091961d-d009-4eaa-baf6-f5ec80a12ff2">4,097</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:46.036%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.381%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.385%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 26, 2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Level 1</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Level 2</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Level 3</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Assets:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash equivalents:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Money market funds</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i66caef15586448fea9736569b0183519_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMy0yLTEtMS0w_3f6b9fb3-2368-421e-892e-637058277073">43,019</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3951498c7cb949f3a19e0a998345885a_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMy00LTEtMS0w_20ee4763-6293-4026-a0aa-80224e42f8ee">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icbad4b8f1ec34b5285e9ac865f168400_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMy02LTEtMS0w_523cbdbe-06ba-4928-a1fd-31e2d5561135">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7c488846135d4af3aca64c3281bf9e94_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMy04LTEtMS0w_862049e8-5ad3-45fe-9985-ef5e6f6f71a4">43,019</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Marketable securities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. treasuries</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3ac46dbef9b2494a8f8bfe37eda43601_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfNy0yLTEtMS0w_ed376190-871e-46e5-b497-d63199c056b4">40,726</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib024db7786014f259e9a6aa19b39ccba_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfNy00LTEtMS0w_3547d539-85c8-44c2-aa84-2aaeb75ed02c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iffdf278b8e9d4fdd83f87f976f008abc_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfNy02LTEtMS0w_3c9db10d-409d-4b6a-99a5-e29f9ab03c3a">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0fdfcd9576454a7684dea61db5dc6a09_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfNy04LTEtMS0w_ae0ee5df-5f77-423f-8649-67bcf3a2f2b3">40,726</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Certificates of deposit</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie90e314e5c2342c3a72103b23021b470_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfOC0yLTEtMS0w_bd1e131c-e424-4b52-b645-304c7cdb6448">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iadd867276cb64488870fae3b03ce0f8d_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfOC00LTEtMS0w_f991f96d-5a3d-4c37-95ac-653b542cd08d">2,179</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ieefc32debfcd4346a84c8cc01bdc0c19_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfOC02LTEtMS0w_ad92b925-3cc0-4fab-a595-a64ce87899a0">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i69197b029fd647eab431903dd357b183_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfOC04LTEtMS0w_2e41792e-398e-4d2f-a2ce-23d4bc9bbb9e">2,179</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. agency securities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i826c13f7503f4c4c8d9c8537ae0daeac_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfOS0yLTEtMS0w_878824f0-d0ee-4b3b-92de-608128e54bea">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if16a4006470e42feb581eabf235c1005_I20201226" decimals="-3" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfOS00LTEtMS0w_fbff7646-e7e0-4564-ba84-4ea22e4b5c4b">575</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibfec3676905d44fe9b156bb7dc84d2ed_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfOS02LTEtMS0w_fc5175e0-12f8-4079-8645-d971a5517a58">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8fad041c01f84a6484a519e41ec2632f_I20201226" decimals="-3" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfOS04LTEtMS0w_994c5741-df6d-4132-b600-93cefbe5db2f">575</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Corporate bonds</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib780fe1f91bd4cedb3287f12f71bafa0_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTAtMi0xLTEtMA_02be2bd2-d022-4918-8b5f-8ff6488c3a1e">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i22041ee55dab44b39a48fdeeeec97a18_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTAtNC0xLTEtMA_04cbe142-2cb1-4b9c-93f7-6ee4736db52f">24,330</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if7ef9c26f9144425bfb963ca243ada33_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTAtNi0xLTEtMA_4004ecff-0aee-4d3b-9b92-08cbdb7b3a47">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8708037d51394da19f4b3468b4ee0394_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTAtOC0xLTEtMA_3fcc56bb-38b8-491d-aeef-3d722f5db758">24,330</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if425e69f00aa4c44870f48a1c48e6b67_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTItMi0xLTEtMA_965c7dd1-0282-4544-a297-3e40b289055b">40,726</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie5589a6446ed4d7d8a4315ece55e84b4_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTItNC0xLTEtMA_96918d04-e031-4593-8eda-9f8bad552254">27,084</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib1c2c291548b4506bf724e9fc37b3099_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTItNi0xLTEtMA_e13a1fc4-849c-472c-a548-cca3880a769f">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:MarketableSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTItOC0xLTEtMA_01b7a70b-0490-4218-a9b3-d6c357e11d24">67,810</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign exchange derivative contracts</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iafd986cdb6c8480ba5063a9fa05344d4_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:DerivativeAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTMtMi0xLTEtMA_2b03b0ae-1c1b-4772-8402-2aea6815da60">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia931b26e563249a2bd0c872abc8e2fc7_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DerivativeAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTMtNC0xLTEtMA_259cd2a2-814e-4bf3-87e0-63632bbd3fc5">1,057</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1438f4502fd947978ae632cfa778e6c4_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:DerivativeAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTMtNi0xLTEtMA_1344056c-89ec-4add-85d7-796e320cf56e">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if5b5c415a9d1484185de57538d5cde01_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DerivativeAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTMtOC0xLTEtMA_d19591bf-b453-43b7-9617-506f8cdc26ff">1,057</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest rate swap derivative contracts</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i20f414dff24540bba6daa384ee099878_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:DerivativeAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTQtMi0xLTEtMA_95625fa6-eebf-49e1-9e90-3b7e2962745d">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic7be3481579345b5b40f5d8520a0bfdf_I20201226" decimals="-3" name="us-gaap:DerivativeAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTQtNC0xLTEtMA_0172ffc6-0652-4b76-8b5e-3b8d5fd21dbd">57</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i72cf10ac46064eaba16e3a534a800ed4_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:DerivativeAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTQtNi0xLTEtMA_6164b82a-13cb-498a-8a2f-cd2618afa9cb">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie1651b021d4f438f88707e0f1893cda3_I20201226" decimals="-3" name="us-gaap:DerivativeAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTQtOC0xLTEtMA_2599f189-a4bb-46c8-849b-b517892de533">57</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if425e69f00aa4c44870f48a1c48e6b67_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AssetsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTUtMi0xLTEtMA_b1237785-3256-491d-b4ee-b501effa8b40">83,745</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie5589a6446ed4d7d8a4315ece55e84b4_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AssetsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTUtNC0xLTEtMA_ab4edfbd-8d04-4d99-bcf3-0288a777595e">28,198</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib1c2c291548b4506bf724e9fc37b3099_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:AssetsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTUtNi0xLTEtMA_489ae40e-8e6b-42b1-9974-c5d89cc6a830">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AssetsFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTUtOC0xLTEtMA_5dce78cc-d1d8-43af-84e9-9ed82528801a">111,943</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Liabilities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest rate swap derivative contracts</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i20f414dff24540bba6daa384ee099878_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:DerivativeLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTgtMi0xLTEtMzUw_794660fd-8766-41ae-af21-e54117f5fcd9">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic7be3481579345b5b40f5d8520a0bfdf_I20201226" decimals="-3" name="us-gaap:DerivativeLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTgtNC0xLTEtMzUw_807763f1-07ae-4797-88ae-e6c5f96ace6d">87</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i72cf10ac46064eaba16e3a534a800ed4_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:DerivativeLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTgtNi0xLTEtMzUw_303c438a-19f1-445d-ab63-70fea942f93a">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ie1651b021d4f438f88707e0f1893cda3_I20201226" decimals="-3" name="us-gaap:DerivativeLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTgtOC0xLTEtMzUw_c575e52e-a1d3-4a0e-ab2d-2cc105a588f9">87</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Contingent consideration</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if425e69f00aa4c44870f48a1c48e6b67_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:BusinessCombinationContingentConsiderationLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTgtMi0xLTEtMA_42f03a55-29fb-4d59-8490-58154b8b1625">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie5589a6446ed4d7d8a4315ece55e84b4_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:BusinessCombinationContingentConsiderationLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTgtNC0xLTEtMA_1b906fac-9941-4d1d-af2d-83cfe4d3ca34">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib1c2c291548b4506bf724e9fc37b3099_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationContingentConsiderationLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTgtNi0xLTEtMA_1e698033-470a-4419-86ab-c64c6889ada7">4,012</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationContingentConsiderationLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTgtOC0xLTEtMA_df0e117a-de2a-4843-a313-15bd49bc317c">4,012</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if425e69f00aa4c44870f48a1c48e6b67_I20201226" decimals="-3" format="ixt:zerodash" name="us-gaap:LiabilitiesFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTktMi0xLTEtMA_f9fc2eea-fd98-4201-9231-a81e27f03d59">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ie5589a6446ed4d7d8a4315ece55e84b4_I20201226" decimals="-3" name="us-gaap:LiabilitiesFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTktNC0xLTEtMA_c7ff9a20-3eef-4cc4-b8e9-6ec21d846f7a">87</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib1c2c291548b4506bf724e9fc37b3099_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTktNi0xLTEtMA_6750a3e1-eff2-498b-b143-a9f75f65ca28">4,012</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesFairValueDisclosure" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTktOC0xLTEtMA_bcbb625a-e3e7-4ebc-bca4-47e8e7715346">4,099</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Cash Equivalents </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of our cash equivalents is determined based on quoted market prices for similar or identical securities. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Marketable Securities </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We classify our marketable securities as available-for-sale and value them utilizing a market approach. Our investments are priced by pricing vendors who provide observable inputs for their pricing without applying significant judgment. Broker pricing is used mainly when a quoted price is not available, the investment is not priced by our pricing vendors or when a broker price </span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">16</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="i92ce0681c3b94415bc6b9d3d7987fc2e" continuedAt="i018fce1ae82c4ae89ae6918a2eb0677c"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">is more reflective of fair value. Our broker-priced investments are categorized as Level 2 investments because fair value is based on similar assets without applying significant judgments. In addition, all investments have a sufficient trading volume to demonstrate that the fair value is appropriate.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Unrealized gains and losses were immaterial and were recorded as a component of Accumulated other comprehensive income in our Condensed Consolidated Balance Sheets. We did not have any other-than-temporary unrealized gains or losses at either period end included in these financial statements.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Contingent Consideration</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contingent consideration, arising from the acquisition of FRT, is a cash amount equal to <ix:nonFraction unitRef="number" contextRef="i6990a2aeb0d84933a52a08cd48837eb6_D20191009-20191009" decimals="INF" name="form:ContingentConsiderationCalculationAmountMultipleOfEBIT" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfMzA1Mg_2e1db099-57ae-4ad1-9028-ff6ccd0e65e0">1.5</ix:nonFraction>x EBIT as defined in the purchase agreement, up to a maximum of &#8364;<ix:nonFraction unitRef="eur" contextRef="i2142b0f687f145299057abe4bd16bfa6_I20191009" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationContingentConsiderationLiability" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfMzExOQ_2b1ee34b-5d63-4e23-8d0d-8186ef34a731">10.3</ix:nonFraction>&#160;million, payable subject to the performance of the acquired business in calendar 2020. We estimated the fair value of contingent consideration using a probability weighted approach. Key assumptions in determining the fair value of contingent consideration included estimating EBIT levels that we believed as of the acquisition date were likely to be achieved during the performance period and discounting at an appropriate discount rate. Contingent consideration as of March&#160;27, 2021 was estimated to be $<ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationContingentConsiderationLiability" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfMzU2NQ_337ed44d-e838-4af6-a427-1d2fcdb8ec40">3.9</ix:nonFraction> million, with the change from December&#160;26, 2020 resulting from foreign currency translation.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Interest Rate Swaps </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of our interest rate swap contracts is determined at the end of each reporting period based on valuation models that use interest rate yield curves as inputs. For accounting purposes, our interest rate swap contracts qualify for, and are designated as, cash flow hedges. The cash flows associated with the interest rate swaps are reported in Net cash provided by operating activities in our Condensed Consolidated Statements of Cash Flows and the fair value of the interest rate swap contracts are recorded within Accrued liabilities and Other liabilities in our Condensed Consolidated Balance Sheets. </span></div><div style="text-align:justify"><span><br/></span></div><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfODA0NA_ab6bb194-7c00-44e7-aac4-7b781e4dc6f5" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The impact of the interest rate swaps on our Condensed Consolidated Statements of Income was as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:36.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.969%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.605%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount of Gain or (Loss) Recognized in OCI on Derivative (Effective Portion)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Location of Gain or (Loss) Reclassified from Accumulated OCI into Income (Effective Portion)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount of Gain or (Loss) Reclassified from Accumulated OCI into Income (Effective Portion)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Location of Gain or (Loss) Recognized in Income on Derivative (Ineffective Portion)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount of Gain or (Loss) Recognized in Income on Derivative (Ineffective Portion)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 27, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iadf2c82018d340d88770a032d367f21e_D20201227-20210327" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjk5MmZjNjNlMGM1ZjQ5ZWM5MmQxOWRlNzYxMGFmYTEwL3RhYmxlcmFuZ2U6OTkyZmM2M2UwYzVmNDllYzkyZDE5ZGU3NjEwYWZhMTBfMS0yLTEtMS0w_495b629e-c8e9-47ea-ae9c-29c3a0849440">624</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i05cfd20b4db7493c86d0e3e642e17793_D20201227-20210327" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjk5MmZjNjNlMGM1ZjQ5ZWM5MmQxOWRlNzYxMGFmYTEwL3RhYmxlcmFuZ2U6OTkyZmM2M2UwYzVmNDllYzkyZDE5ZGU3NjEwYWZhMTBfMS02LTEtMS0w_3ea5ea3f-4756-4c7c-ad5d-10c5b1cd6b1f">38</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 28, 2020</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i090130968f6b4bdd87a9441ed66661b2_D20191229-20200328" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjk5MmZjNjNlMGM1ZjQ5ZWM5MmQxOWRlNzYxMGFmYTEwL3RhYmxlcmFuZ2U6OTkyZmM2M2UwYzVmNDllYzkyZDE5ZGU3NjEwYWZhMTBfMi0yLTEtMS0w_2e90fb8c-cf16-4851-997c-cd875c6f0877">96</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i05d42ee6296445d58b8575dcf4f29931_D20191229-20200328" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjk5MmZjNjNlMGM1ZjQ5ZWM5MmQxOWRlNzYxMGFmYTEwL3RhYmxlcmFuZ2U6OTkyZmM2M2UwYzVmNDllYzkyZDE5ZGU3NjEwYWZhMTBfMi02LTEtMS0w_53dbc011-a13f-4c17-af68-067177f04b8b">22</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Foreign Exchange Derivative Contracts</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We operate and sell our products in various global markets. As a result, we are exposed to changes in foreign currency exchange rates. We utilize foreign currency forward contracts to hedge against future movements in foreign exchange rates that affect certain existing foreign currency denominated assets and liabilities and forecasted foreign currency revenue and expense transactions. Under this program, our strategy is to have increases or decreases in our foreign currency exposures mitigated by gains or losses on the foreign currency forward contracts in order to mitigate the risks and volatility associated with foreign currency transaction gains or losses. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We do not use derivative financial instruments for speculative or trading purposes. For accounting purposes, certain of our foreign currency forward contracts are not designated as hedging instruments and, accordingly, we record the fair value of these contracts as of the end of our reporting period in our Condensed Consolidated Balance Sheets with changes in fair value recorded within Other income (expense), net in our Condensed Consolidated Statement of Income for both realized and unrealized gains and losses. Certain of our foreign currency forward contracts are designated as cash flow hedges, and, accordingly, we record the fair value of these contracts as of the end of our reporting period in our Condensed Consolidated Balance Sheets with changes in fair value recorded as a component of Accumulated other comprehensive income and reclassified into earnings in the same period in which the hedged transaction affects earnings, and in the same line item on the Condensed Consolidated Statements of Income as the impact of the hedge transaction. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of our foreign exchange derivative contracts was determined based on current foreign currency exchange rates and forward points. All of our foreign exchange derivative contracts outstanding at March&#160;27, 2021 will mature by the first quarter of fiscal 2022.</span></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">17</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="i018fce1ae82c4ae89ae6918a2eb0677c" continuedAt="ia6f36f316ca845609af207be55ad073d"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfODAzMA_c6106f56-c7c6-4b51-bce4-b681bea4c1db" continuedAt="i04fd52f449854760a965cabc75b0ad04" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides information about our foreign currency forward contracts outstanding as of March&#160;27, 2021 (in thousands):</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:55.854%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.345%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.385%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.248%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.385%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.251%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Currency</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Contract Position</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Contract Amount<br/>(Local Currency)<br/></span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Contract Amount<br/>(U.S. Dollars)<br/></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Euro Dollar</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Buy</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="eur" contextRef="i1ff9acf7e74f462a9ac8974a00e30852_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DerivativeNotionalAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfMS00LTEtMS0w_4a4901de-4bd5-4f32-bfee-05ee93ef1e0a">10,141</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i1ff9acf7e74f462a9ac8974a00e30852_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DerivativeNotionalAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfMS02LTEtMS0w_0b6185c1-9143-41e0-9f33-c17fe75804a6">12,025</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Euro Dollar</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sell</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="eur" contextRef="ic926e43ea3034c338f2f1193109969da_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DerivativeNotionalAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfMi00LTEtMS0w_e942121c-8d56-4d26-ae58-7d9b51ae14a7">11,043</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic926e43ea3034c338f2f1193109969da_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DerivativeNotionalAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfMi02LTEtMS0w_0c948dd1-a1a5-4cd5-a4a9-438ba51182d8">13,026</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Japanese Yen</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Buy</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="jpy" contextRef="i71bee5004c77402fbdca0a87dc12dc36_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DerivativeNotionalAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfMy00LTEtMS0w_3fde4bf3-2f72-4152-8cb3-282ef86b848a">1,971,765</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i71bee5004c77402fbdca0a87dc12dc36_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DerivativeNotionalAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfMy02LTEtMS0w_4c367e1f-023c-46c2-942f-1d00e8cb92ef">17,977</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Korean Won</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sell</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="krw" contextRef="i30ce92d32c3a472db9133538bce6a64e_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DerivativeNotionalAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfNC00LTEtMS0w_c094a67f-6974-4b13-974b-239c66be3cbb">3,129,743</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i30ce92d32c3a472db9133538bce6a64e_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DerivativeNotionalAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfNC02LTEtMS0w_2a112ea0-47d8-48a8-831a-c7e6af208a7b">2,767</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Taiwan Dollar</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sell</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="twd" contextRef="ia07894792f2a45cd8ea42bf6a6de0ac9_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DerivativeNotionalAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfNS00LTEtMS0w_36e61458-0d15-410f-8c88-b32631c40869">7,972</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia07894792f2a45cd8ea42bf6a6de0ac9_I20210327" decimals="-3" name="us-gaap:DerivativeNotionalAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfNS02LTEtMS0w_b99c3f48-9109-45a9-842d-524843e2ad4e">279</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total USD notional amount of outstanding foreign exchange contracts</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i29f6a021e44143acb33d3256fd42ec82_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DerivativeNotionalAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfNy02LTEtMS0w_a60d63f4-8e74-4d79-a9b0-b20af329bf31">13,930</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our foreign currency contracts are classified within Level 2 of the fair value hierarchy as they are valued using pricing models that utilize observable market inputs.</span></div><div style="text-align:justify"><span><br/></span></div><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfODA0MA_56b31145-42b9-47ea-a57b-388df70a2547" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The impact of foreign exchange derivative contracts not designated as cash flow hedges on our Condensed Consolidated Statements of Income was as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:37.350%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:33.549%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.180%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.331%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount of Gain (Loss) Recognized on Derivatives</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Derivatives Not Designated as Hedging Instruments</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Location of Gain (Loss) Recognized on Derivatives</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign exchange forward contracts</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other income (expense), net</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i41f5ac4879b947f5882bf744929e0d10_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DerivativeGainLossOnDerivativeNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjIyOWU3M2FhYWQ4ZjQ0YTg4NzdmZWUyZTEzZDAyYTI4L3RhYmxlcmFuZ2U6MjI5ZTczYWFhZDhmNDRhODg3N2ZlZTJlMTNkMDJhMjhfMy00LTEtMS0w_fe43d8b3-477c-47f1-aca9-46e924b067b7">1,288</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i855be42e47a54624a24482d75efbd5e5_D20191229-20200328" decimals="-3" sign="-" name="us-gaap:DerivativeGainLossOnDerivativeNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjIyOWU3M2FhYWQ4ZjQ0YTg4NzdmZWUyZTEzZDAyYTI4L3RhYmxlcmFuZ2U6MjI5ZTczYWFhZDhmNDRhODg3N2ZlZTJlMTNkMDJhMjhfMy02LTEtMS0w_d0b8b214-024b-49cd-9849-dcf8ecb55f06">115</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><ix:continuation id="i04fd52f449854760a965cabc75b0ad04"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The impact of foreign exchange derivative contracts designated as cash flow hedges on our Condensed Consolidated Statements of Income was as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:42.467%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:28.285%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.332%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount of Gain (Loss) Recognized in Accumulated OCI on Derivative </span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Location of Gain (Loss) Reclassified from Accumulated OCI into Income </span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount of Gain (Loss) Reclassified from Accumulated OCI into Income </span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 27, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib9af7ff396304640b3355d49e0973eb0_D20201227-20210327" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfMS0yLTEtMS0w_f7b96d50-a12c-4098-ae9c-f0a0e6b97169">526</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i858922598a254445afd9b4bdd08eb539_D20201227-20210327" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfMS02LTEtMS0w_e7217c8b-3f3d-46e1-a717-b7a4d62efaf6">250</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i57c021cbe46b4d1d8417533c34518b6d_D20201227-20210327" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfMi02LTEtMS0w_fd027595-0d82-4405-b245-8ae63a9e2338">30</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Selling, general and administrative</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i65f05b5fd52044c78876707c5ac38fb3_D20201227-20210327" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfMy02LTEtMS0w_65e9d0e7-2c62-4e02-84e3-725ca552458c">82</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib9af7ff396304640b3355d49e0973eb0_D20201227-20210327" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfNC02LTEtMS0w_6a05920e-cd09-40a2-9138-95c2d9b6438d">362</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 28, 2020</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iab97b4d4a8d54ea6a62c1cf1466a5227_D20191229-20200328" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfNi0yLTEtMS0w_d76b9b78-6a33-4306-8fb1-b527705955b0">3</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i95df57ad055943a493228cd16b7d5caf_D20191229-20200328" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfNi02LTEtMS0w_c2307933-6ca5-496d-a6cd-4fb64e17c6c6">120</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib12af2ac56894cf3990e1ac2d88df7f5_D20191229-20200328" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfNy02LTEtMS0w_32923bc6-bcc1-4251-a3db-ae3933049c6c">18</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Selling, general and administrative</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="idf711117c5ea427280ebc4526aec164a_D20191229-20200328" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfOC02LTEtMS0w_f74698e6-33a5-4bca-9a45-779abd971a9b">43</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="iab97b4d4a8d54ea6a62c1cf1466a5227_D20191229-20200328" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfOS02LTEtMS0w_20a6ed67-009c-4061-8cd7-de035d97fc59">181</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:12pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"><ix:continuation id="i0529aafbc9b143c7815444bc11abf273" continuedAt="i889ac94d0b8a4cd58637c127478a4e21">Assets and Liabilities Measured at Fair Value on a Non-Recurring Basis</ix:continuation></span></div></ix:continuation><div style="text-align:justify"><ix:continuation id="ia6f36f316ca845609af207be55ad073d" continuedAt="ic93360c164cf47b2820ab398c12ea54e"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i889ac94d0b8a4cd58637c127478a4e21">We measure and report our non-financial assets such as Property, plant and equipment, Goodwill and Intangible assets at fair value on a non-recurring basis if we determine these assets to be impaired or in the period when we make a business acquisition.</ix:continuation> Other than as discussed in Note 4, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Acquisition</span></ix:continuation><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ic93360c164cf47b2820ab398c12ea54e">, there were <ix:nonFraction unitRef="usd" contextRef="i104a76d3d05e44109700c142c3f865fb_I20210327" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:LiabilitiesFairValueDisclosure" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfNzkxOQ_13d44ac5-5045-43c1-8dc2-57c98ea725db"><ix:nonFraction unitRef="usd" contextRef="if72f6c99cda54fccb7c253fb2c11125a_I20200328" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:AssetsFairValueDisclosure" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfNzkxOQ_8c7289f2-bc89-4781-a562-a2ce62212b0f"><ix:nonFraction unitRef="usd" contextRef="i104a76d3d05e44109700c142c3f865fb_I20210327" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:AssetsFairValueDisclosure" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfNzkxOQ_975c740d-b5f2-4858-9822-0ec918af97b5"><ix:nonFraction unitRef="usd" contextRef="if72f6c99cda54fccb7c253fb2c11125a_I20200328" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:LiabilitiesFairValueDisclosure" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfNzkxOQ_c7c71885-1982-4166-9d85-51c7540d8311">no</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction> assets or liabilities measured at fair value on a nonrecurring basis during the three months ended March&#160;27, 2021 or March&#160;28, 2020.</ix:continuation>  </span></div><div style="text-align:justify"><span><br/></span></div><div id="i9c89e3d57c9546d7826f58de281429d9_58"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 8 &#8212; <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ProductWarrantyDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RleHRyZWdpb246NzJiOTBlNGRlNWFkNGIzMmI0ZTZkZjE3NGQ3ZmQ5OWVfMTE4MQ_ad2cbe82-ea61-4df7-b22e-4273c8ff4798" continuedAt="i7fd6b838f8ed45ba88c50541367ddc59" escape="true">Warranty</ix:nonNumeric></span></div><ix:continuation id="i7fd6b838f8ed45ba88c50541367ddc59" continuedAt="ie231200586f649b5a25dfeaeaffa477e"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We offer warranties on certain products and record a liability for the estimated future costs associated with warranty claims at the time revenue is recognized. The warranty liability is based upon historical experience and our estimate of the level of future costs. While we engage in product quality programs and processes, our warranty obligation is affected by product failure rates, </span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">18</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="ie231200586f649b5a25dfeaeaffa477e"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">material usage and service delivery costs. We continuously monitor product returns for warranty and maintain a reserve for the related expenses based upon our historical experience and any specifically identified failures. As we sell new products to our customers, we must exercise considerable judgment in estimating the expected failure rates. This estimating process is based on historical experience of similar products, as well as various other assumptions that we believe to be reasonable under the circumstances. We provide for the estimated cost of product warranties at the time revenue is recognized as a component of Cost of revenues in our Condensed Consolidated Statement of Income.</span></div><div style="text-align:justify"><span><br/></span></div><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RleHRyZWdpb246NzJiOTBlNGRlNWFkNGIzMmI0ZTZkZjE3NGQ3ZmQ5OWVfMTE4Mg_393fbd23-81d4-4364-bf07-e9b7ea7f82b9" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in our warranty liability were as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.315%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.329%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Balance at beginning of period</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RhYmxlOmY1NWRkMjNiNTZhMDQyMTU5OGNkM2E0NzIwMmJhZWJmL3RhYmxlcmFuZ2U6ZjU1ZGQyM2I1NmEwNDIxNTk4Y2QzYTQ3MjAyYmFlYmZfMi0xLTEtMS0w_b53d81ae-6666-4ebb-8f7c-7bf434f5023a">3,918</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1eeff05d49e94a6396339ea847351869_I20191228" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RhYmxlOmY1NWRkMjNiNTZhMDQyMTU5OGNkM2E0NzIwMmJhZWJmL3RhYmxlcmFuZ2U6ZjU1ZGQyM2I1NmEwNDIxNTk4Y2QzYTQ3MjAyYmFlYmZfMi0zLTEtMS0w_b8f3eae8-bbdd-40ae-b3c2-963896669766">1,942</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accruals</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrualWarrantiesIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RhYmxlOmY1NWRkMjNiNTZhMDQyMTU5OGNkM2E0NzIwMmJhZWJmL3RhYmxlcmFuZ2U6ZjU1ZGQyM2I1NmEwNDIxNTk4Y2QzYTQ3MjAyYmFlYmZfMy0xLTEtMS0w_e4676571-536f-483a-9e44-509d625d49ef">1,374</ix:nonFraction>&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" name="us-gaap:ProductWarrantyAccrualWarrantiesIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RhYmxlOmY1NWRkMjNiNTZhMDQyMTU5OGNkM2E0NzIwMmJhZWJmL3RhYmxlcmFuZ2U6ZjU1ZGQyM2I1NmEwNDIxNTk4Y2QzYTQ3MjAyYmFlYmZfMy0zLTEtMS0w_58c3e9bd-0f32-4994-9750-f55b74cabe55">660</ix:nonFraction>&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Settlements</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrualPayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RhYmxlOmY1NWRkMjNiNTZhMDQyMTU5OGNkM2E0NzIwMmJhZWJmL3RhYmxlcmFuZ2U6ZjU1ZGQyM2I1NmEwNDIxNTk4Y2QzYTQ3MjAyYmFlYmZfNC0xLTEtMS0w_baac641c-c85e-4428-8123-de2c56f09a8f">1,573</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" name="us-gaap:ProductWarrantyAccrualPayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RhYmxlOmY1NWRkMjNiNTZhMDQyMTU5OGNkM2E0NzIwMmJhZWJmL3RhYmxlcmFuZ2U6ZjU1ZGQyM2I1NmEwNDIxNTk4Y2QzYTQ3MjAyYmFlYmZfNC0zLTEtMS0w_0511fc82-6c18-44f2-8108-fef76c8b1564">684</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Balance at end of period</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RhYmxlOmY1NWRkMjNiNTZhMDQyMTU5OGNkM2E0NzIwMmJhZWJmL3RhYmxlcmFuZ2U6ZjU1ZGQyM2I1NmEwNDIxNTk4Y2QzYTQ3MjAyYmFlYmZfNS0xLTEtMS0w_d352c1fd-db09-44fb-baed-b46afa6142fb">3,719</ix:nonFraction>&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i544b840724324a999b22494d0651898a_I20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RhYmxlOmY1NWRkMjNiNTZhMDQyMTU5OGNkM2E0NzIwMmJhZWJmL3RhYmxlcmFuZ2U6ZjU1ZGQyM2I1NmEwNDIxNTk4Y2QzYTQ3MjAyYmFlYmZfNS0zLTEtMS0w_593985e3-3e2b-4946-8884-3fb5968c4810">1,918</ix:nonFraction>&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="padding-left:13.5pt;padding-right:13.5pt;text-align:center;text-indent:18pt"><span><br/></span></div><div id="i9c89e3d57c9546d7826f58de281429d9_61"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 9 &#8212; <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RleHRyZWdpb246OTM0MDRlYzkwNzBlNDk0OWE2MmUxNWEzZDlhODkwOGVfMTMx_ad5d26d0-49e7-42f6-9e31-1a021b2b6b6a" continuedAt="ifc17738e287f463dbecacd354947ad9a" escape="true">Property, Plant and Equipment, net</ix:nonNumeric></span></div><div style="text-align:justify"><span><br/></span></div><ix:continuation id="ifc17738e287f463dbecacd354947ad9a"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:PropertyPlantAndEquipmentTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RleHRyZWdpb246OTM0MDRlYzkwNzBlNDk0OWE2MmUxNWEzZDlhODkwOGVfMTMy_f5a3d6b4-0123-4ff8-836c-ee95b5bc629a" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property, plant and equipment, net consisted of the following (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.461%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.329%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 26,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Land</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i748bc4ea3d26497da8a4181447809083_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfMS0xLTEtMS0w_aa77a851-76c8-4eba-bae8-5702dd9fdb11">4,751</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib556c791343643a2b852ced1d6bc6139_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfMS0zLTEtMS0w_83b42997-d931-41e3-953e-23b395e45d99">4,751</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Machinery and equipment </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib8c908da8479474d8c6d00efea213bb8_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfMi0xLTEtMS0w_cbda3631-b2d8-4235-80bc-0cae1f8b469a">233,357</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib5010210b88e428c83f009dd6f0543ed_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfMi0zLTEtMS0w_c630cdf8-696b-4ba8-852d-df439bd9ca3a">226,185</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Computer equipment and software</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ceedab9d7b3401c8673c48e522712cc_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfMy0xLTEtMS0w_b099ee4e-3ce5-4b39-b1c8-08d215765a29">43,839</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i22c4b1b8854f4d74b3bc20b665ebe325_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfMy0zLTEtMS0w_63f17e0e-4229-467e-b12c-4617fb9f9cde">36,361</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Furniture and fixtures </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63feb9a9bc9048c18f431a4bcc814a1c_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfNC0xLTEtMS0w_abb084e3-1ea3-4cd1-86fa-ad32bf9103a2">6,925</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0894b5d61f404b368720a7e152384e6e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfNC0zLTEtMS0w_c7bfd773-b367-4832-b296-08600acaf9f7">6,894</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Leasehold improvements </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8f10ce656749423b840c7a310508812a_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfNS0xLTEtMS0w_607b0834-f16c-4c9f-8073-852fbe9c2ff1">80,011</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if5590f5fa23f460786af19183085bf1f_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfNS0zLTEtMS0w_d5ead4c0-9d54-4af1-b8c2-252dbf0e3f0f">79,144</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sub-total </span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfNi0xLTEtMS0w_891c1e46-0de7-4cf7-aa83-aad939740526">368,883</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfNi0zLTEtMS0w_061ef6d8-0fc5-4d05-9952-210c76ab0232">353,335</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: Accumulated depreciation and amortization </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfNy0xLTEtMS0w_a64db409-2d32-4e89-9f20-78be4989e3cd">298,865</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfNy0zLTEtMS0w_5e7d6242-fe79-44c4-b260-1688647d6229">294,468</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net, property, plant and equipment </span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="form:PropertyPlantAndEquipmentNetExcludesConstructionInProgress" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfOC0xLTEtMS0w_aff19521-207b-4f91-9ddf-ced5d10e15db">70,018</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="form:PropertyPlantAndEquipmentNetExcludesConstructionInProgress" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfOC0zLTEtMS0w_7b549c59-b461-4b2a-95e2-662b268120fe">58,867</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Construction-in-process</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ConstructionInProgressGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfOS0xLTEtMS0w_0dc6a3c3-0e3e-4766-80f4-03d92f6ebab3">42,294</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ConstructionInProgressGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfOS0zLTEtMS0w_1e8a68f9-760f-4552-9fcb-b575df6310b6">45,236</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfMTAtMS0xLTEtMA_39df038b-3f91-4b01-a651-9a435c3999ce">112,312</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfMTAtMy0xLTEtMA_7d7fd687-b347-4d5d-b31d-ca019d02c472">104,103</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="text-align:justify"><span><br/></span></div><div id="i9c89e3d57c9546d7826f58de281429d9_64"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 10 &#8212; <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:StockholdersEquityNoteDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMTQxMA_c4321760-fdf0-49e7-906c-20898bc491b4" continuedAt="i4e3f4d8c0cae4f4096b84904dd0312c8" escape="true">Stockholders&#8217; Equity and Stock-Based Compensation</ix:nonNumeric></span></div><div style="text-align:justify"><span><br/></span></div><ix:continuation id="i4e3f4d8c0cae4f4096b84904dd0312c8" continuedAt="i52ae1528b9db4e8fa8c215f15aa3c5d2"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Common Stock Repurchase Program</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On October 26, 2020, our Board of Directors authorized a program to repurchase up to $<ix:nonFraction unitRef="usd" contextRef="i83a1c50d70a44ceead8fd2607534264c_I20201026" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockRepurchaseProgramAuthorizedAmount1" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMjE5OTAyMzI1ODgxNg_dc7d654c-a6bf-4654-b202-fcf78bfe15eb">50</ix:nonFraction>&#160;million of outstanding common stock to offset potential dilution from issuances of common stock under our stock-based compensation plans. The share repurchase program will expire on October 28, 2022. During the three months ended March&#160;27, 2021, we repurchased <ix:nonFraction unitRef="shares" contextRef="i8fa8e4913bce435f98a1ae9ddcd3122e_D20201227-20210327" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockSharesAcquired" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMTA5OTUxMTYzMDE4Mw_f020294b-b015-415c-93ea-1c5ed0cc9df0">136,402</ix:nonFraction> shares of common stock for $<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:TreasuryStockValueAcquiredCostMethod" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMTA5OTUxMTYzMDIwMA_2a90845c-cd53-4d3b-9cd6-7b7b7d0e7ba4">5.7</ix:nonFraction> million and, as of March&#160;27, 2021, $<ix:nonFraction unitRef="usd" contextRef="ia53c8599a7ab4684940e34c0f363d1f8_I20210327" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMTA5OTUxMTYzMDI0Mw_9ebef58f-4292-4dbd-955d-78325bff5175">44.3</ix:nonFraction> million remained available for future repurchases.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our policy related to repurchases of our common stock is to charge the excess of cost over par value to additional paid-in capital once the shares are retired. All repurchases were made in compliance with Rule 10b-18 under the Securities Exchange Act of 1934, as amended.</span></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">19</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="i52ae1528b9db4e8fa8c215f15aa3c5d2" continuedAt="ie6691d88ddb44256af0bcdbb1f13e856"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Restricted Stock Units</span></div><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMTQwMg_56734229-b34e-48d6-a0f0-0feae9a74fd0" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Restricted stock unit (&#8220;RSU&#8221;) activity under our equity incentive plan was as follows:</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.315%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.329%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Units</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted Average Grant Date Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">RSUs at December 26, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ifb72ab70068e414e836189f85f45fc41_I20201226" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfMS0xLTEtMS0w_c90f4b52-31a0-4da3-ad66-48bbab0966de">2,840,922</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ifb72ab70068e414e836189f85f45fc41_I20201226" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfMS0zLTEtMS0w_b103ac46-330a-42dd-9a43-3dc42a6bc4b0">19.80</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Awards granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i9fc06d57d16a4e70b6f7c2ac52ee8fe0_D20201227-20210327" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfMi0xLTEtMS0w_6ca50bd9-8322-402f-a637-81e835e76067">8,765</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i9fc06d57d16a4e70b6f7c2ac52ee8fe0_D20201227-20210327" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfMi0zLTEtMS0w_5e9121c9-73c0-408e-83f8-5b2adc6f52a4">46.25</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Awards vested</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i9fc06d57d16a4e70b6f7c2ac52ee8fe0_D20201227-20210327" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfMy0xLTEtMS0w_e49b70e9-c867-45ab-a31b-743f92359232">67,635</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i9fc06d57d16a4e70b6f7c2ac52ee8fe0_D20201227-20210327" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfMy0zLTEtMS0w_e1de09ed-144c-445a-97f8-4d462c123974">16.38</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Awards forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i9fc06d57d16a4e70b6f7c2ac52ee8fe0_D20201227-20210327" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfNC0xLTEtMS0w_950906f6-c024-483b-b946-bb828d7793a8">11,140</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i9fc06d57d16a4e70b6f7c2ac52ee8fe0_D20201227-20210327" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfNC0zLTEtMS0w_f4e4f707-ea16-4754-bede-027d3162bfca">21.21</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">RSUs at March 27, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i159cea8e929f4890970bb676424e3f92_I20210327" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfNS0xLTEtMS0w_a97c53c9-4ccd-430c-85ee-50d9cb084620">2,770,912</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i159cea8e929f4890970bb676424e3f92_I20210327" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfNS0zLTEtMS0w_145545e9-3dde-42c7-84d8-7fd10f2e3592">19.96</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Performance Restricted Stock Units</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We may grant Performance RSUs (&#8220;PRSUs&#8221;) to certain executives, which vest based upon us achieving certain market performance criteria. There were <ix:nonFraction unitRef="shares" contextRef="ie1e912506c2641f3bb7d9d4001735277_D20201227-20210327" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMjE5OTAyMzI1ODgyOA_9addcb7a-e75a-451a-81e5-14e1921fa8d1">no</ix:nonFraction> PRSUs granted during the three months ended March&#160;27, 2021. PRSUs are included as part of the RSU activity above.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Stock Options</span></div><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMTQxNg_c2fdc399-4d29-47e3-906f-f834e72089c7" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Stock option activity under our equity incentive plan was as follows:</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:46.498%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.527%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.272%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.527%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.272%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.527%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.272%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.527%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.278%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Options Outstanding</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted Average Exercise Price</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted Average Remaining Contractual Life in Years</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Aggregate Intrinsic Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Outstanding at December 26, 2020</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i870d2a11d24245099f539695bcdec5d2_I20201226" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfMS0yLTEtMS0w_7735bf1d-7cb7-45af-b8d9-56e9128b1fc7">106,000</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i870d2a11d24245099f539695bcdec5d2_I20201226" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfMS00LTEtMS0w_33f0d391-0ce7-4f13-9feb-a1f72487353d">8.35</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Options exercised</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="ie1e912506c2641f3bb7d9d4001735277_D20201227-20210327" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfMy0yLTEtMS0w_3e8d5f42-48a2-473a-97de-ea0abe1d366d">50,000</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ie1e912506c2641f3bb7d9d4001735277_D20201227-20210327" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfMy00LTEtMS0w_b2e1f3bc-5869-449b-a2fa-0f270c9afd99">8.44</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Outstanding at March 27, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i387b92b675da43d5bf75aacb5290ba08_I20210327" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNS0yLTEtMS0w_f7af73ef-d928-476f-89e3-db5d7e6c678c">56,000</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i387b92b675da43d5bf75aacb5290ba08_I20210327" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNS00LTEtMS0w_f63840df-71b4-4f1c-83e3-c89561865af7">8.28</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ie1e912506c2641f3bb7d9d4001735277_D20201227-20210327" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNS02LTEtMS0w_5420c5b2-d9ba-4bd4-839a-bf0fe2a43677">0.92</ix:nonNumeric></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i387b92b675da43d5bf75aacb5290ba08_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNS04LTEtMS0w_0aa622e1-846e-4063-b835-6e3be1792e34">2,078,820</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Vested and expected to vest at March 27, 2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i387b92b675da43d5bf75aacb5290ba08_I20210327" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNi0yLTEtMS0w_6b3b6998-3704-4858-ba77-4d28b88b65bb">56,000</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i387b92b675da43d5bf75aacb5290ba08_I20210327" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNi00LTEtMS0w_14054025-8c66-40f4-a1a1-c33802c2be98">8.28</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ie1e912506c2641f3bb7d9d4001735277_D20201227-20210327" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNi02LTEtMS0w_dea530cf-cf5e-49bf-b4d9-af3c65c85ca3">0.92</ix:nonNumeric></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i387b92b675da43d5bf75aacb5290ba08_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNi04LTEtMS0w_f9e012c6-3afb-4e66-a67e-64bd74ffcfee">2,078,820</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Exercisable at March 27, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i387b92b675da43d5bf75aacb5290ba08_I20210327" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNy0yLTEtMS0w_9687b129-2acb-4700-af0a-bd84638dbc40">56,000</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i387b92b675da43d5bf75aacb5290ba08_I20210327" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNy00LTEtMS0w_2a2a46f4-727e-49a7-bf83-58b1d709e175">8.28</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ie1e912506c2641f3bb7d9d4001735277_D20201227-20210327" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNy02LTEtMS0w_00bf06c7-e1d9-4c05-9ed3-5be306166b80">0.92</ix:nonNumeric></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i387b92b675da43d5bf75aacb5290ba08_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNy04LTEtMS0w_7415b7b4-38db-4b8b-a29a-74ec9eb31a89">2,078,820</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Employee Stock Purchase Plan </span></div><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMTQxMw_4cbd7b26-5729-4343-9fe6-9dcf784857b1" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information related to activity under our Employee Stock Purchase Plan (&#8220;ESPP&#8221;) was as follows: </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:85.869%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.385%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.346%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27, 2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Shares issued</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i05ad810c16c74d3086a67614c59b1eab_D20201227-20210327" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjgyMGJlNDJjZGVkNDQyYjFiZmU0OWJiZDM5MGVhNGZkL3RhYmxlcmFuZ2U6ODIwYmU0MmNkZWQ0NDJiMWJmZTQ5YmJkMzkwZWE0ZmRfMi0yLTEtMS0w_de2ac0f1-3459-4c41-b7e0-08dd4939291e">228,784</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted average per share purchase price</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i316667ec5afd4cb7a006803d0a1e78e2_I20210327" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjgyMGJlNDJjZGVkNDQyYjFiZmU0OWJiZDM5MGVhNGZkL3RhYmxlcmFuZ2U6ODIwYmU0MmNkZWQ0NDJiMWJmZTQ5YmJkMzkwZWE0ZmRfMy0yLTEtMS0w_69bd0de6-fbe8-451a-babc-21ff018f6d57">22.14</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted average per share discount from the fair value of our common stock on the date of issuance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="i05ad810c16c74d3086a67614c59b1eab_D20201227-20210327" decimals="2" sign="-" name="form:WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjgyMGJlNDJjZGVkNDQyYjFiZmU0OWJiZDM5MGVhNGZkL3RhYmxlcmFuZ2U6ODIwYmU0MmNkZWQ0NDJiMWJmZTQ5YmJkMzkwZWE0ZmRfNC0yLTEtMS0w_471ff358-6e73-406c-8ac7-1829e3219cb8">18.73</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Stock-Based Compensation</span></div><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMTQwNQ_b7038164-43e0-477e-9a39-f4171b01d522" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Stock-based compensation was included in our Condensed Consolidated Statements of Income as follows (in thousands): </span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.315%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.329%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0d1ea4fd763a46b5a3950b317c8ffaaf_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmJlYmRiMWUxZWM2MjQwNTQ4YzUxNTliYmQxMjI3YjMzL3RhYmxlcmFuZ2U6YmViZGIxZTFlYzYyNDA1NDhjNTE1OWJiZDEyMjdiMzNfMi0xLTEtMS0w_aa1ed7bd-3904-4618-acd2-a0dfc603bcea">1,335</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i58b6c2d1e0654942851c8b0deb45c8eb_D20191229-20200328" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmJlYmRiMWUxZWM2MjQwNTQ4YzUxNTliYmQxMjI3YjMzL3RhYmxlcmFuZ2U6YmViZGIxZTFlYzYyNDA1NDhjNTE1OWJiZDEyMjdiMzNfMi0zLTEtMS0w_4ffb6f63-c03f-45a1-a19b-448a0aa4c701">937</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib24b7fe86f6246ff9aa7cd150451397b_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmJlYmRiMWUxZWM2MjQwNTQ4YzUxNTliYmQxMjI3YjMzL3RhYmxlcmFuZ2U6YmViZGIxZTFlYzYyNDA1NDhjNTE1OWJiZDEyMjdiMzNfMy0xLTEtMS0w_9501b49b-2ad8-40e3-a607-1abee5532505">1,689</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6979a8e46f2c4ffc9073db33ed8d7c2d_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmJlYmRiMWUxZWM2MjQwNTQ4YzUxNTliYmQxMjI3YjMzL3RhYmxlcmFuZ2U6YmViZGIxZTFlYzYyNDA1NDhjNTE1OWJiZDEyMjdiMzNfMy0zLTEtMS0w_865c0500-9f74-47ac-a702-9470a3445a46">1,439</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Selling, general and administrative</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iefe5e641875c47c38077d9787aeda6d1_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmJlYmRiMWUxZWM2MjQwNTQ4YzUxNTliYmQxMjI3YjMzL3RhYmxlcmFuZ2U6YmViZGIxZTFlYzYyNDA1NDhjNTE1OWJiZDEyMjdiMzNfNC0xLTEtMS0w_5402a14d-6a82-4189-b405-0d076f3675be">4,053</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i827c2859272f46d1af6b076a94267ac8_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmJlYmRiMWUxZWM2MjQwNTQ4YzUxNTliYmQxMjI3YjMzL3RhYmxlcmFuZ2U6YmViZGIxZTFlYzYyNDA1NDhjNTE1OWJiZDEyMjdiMzNfNC0zLTEtMS0w_5031b573-42e0-4b76-8e3a-406fb6e56e37">3,247</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total stock-based compensation</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmJlYmRiMWUxZWM2MjQwNTQ4YzUxNTliYmQxMjI3YjMzL3RhYmxlcmFuZ2U6YmViZGIxZTFlYzYyNDA1NDhjNTE1OWJiZDEyMjdiMzNfNS0xLTEtMS0w_42ca7712-97a9-46c5-8450-59a01d925507">7,077</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmJlYmRiMWUxZWM2MjQwNTQ4YzUxNTliYmQxMjI3YjMzL3RhYmxlcmFuZ2U6YmViZGIxZTFlYzYyNDA1NDhjNTE1OWJiZDEyMjdiMzNfNS0zLTEtMS0w_8cd4756a-dd9d-4eaa-a5fb-99648b319c09">5,623</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">20</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="ie6691d88ddb44256af0bcdbb1f13e856"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Unrecognized Compensation Costs</span></div><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMTQwMQ_4d397f41-a642-46ba-9825-dc884423c6d1" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At March&#160;27, 2021, the unrecognized stock-based compensation was as follows (dollars in thousands):&#160;</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.315%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.329%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unrecognized Expense</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Average Expected Recognition Period in Years</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Restricted stock units</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i65abe29b399a4adfa10e5b326d1b11f1_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmRjZmM0MWM1MThlMzRiMjA4ZGY4YjAwNmRhOTMzNzBjL3RhYmxlcmFuZ2U6ZGNmYzQxYzUxOGUzNGIyMDhkZjhiMDA2ZGE5MzM3MGNfMi0xLTEtMS0w_7a284fe5-ff34-4ec8-803a-548a89850482">27,429</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="if243d8f43a594989ae63b084745dfc7c_D20201227-20210327" format="ixt-sec:duryear" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmRjZmM0MWM1MThlMzRiMjA4ZGY4YjAwNmRhOTMzNzBjL3RhYmxlcmFuZ2U6ZGNmYzQxYzUxOGUzNGIyMDhkZjhiMDA2ZGE5MzM3MGNfMi0zLTEtMS0w_75101417-dee9-4044-8cd9-a0542965d51f">2.03</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Performance restricted stock units</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6f47cb425bf440ec8f2aa4f802c7c3c8_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmRjZmM0MWM1MThlMzRiMjA4ZGY4YjAwNmRhOTMzNzBjL3RhYmxlcmFuZ2U6ZGNmYzQxYzUxOGUzNGIyMDhkZjhiMDA2ZGE5MzM3MGNfMy0xLTEtMS0w_86b45e2c-0de7-4c7a-8574-ef8e8727b343">7,719</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="iba459ce5a545461593f2866126f3c0c2_D20201227-20210327" format="ixt-sec:duryear" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmRjZmM0MWM1MThlMzRiMjA4ZGY4YjAwNmRhOTMzNzBjL3RhYmxlcmFuZ2U6ZGNmYzQxYzUxOGUzNGIyMDhkZjhiMDA2ZGE5MzM3MGNfMy0zLTEtMS0w_03bc4e56-5057-4f1b-b175-c413edc8e8e2">1.93</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Employee stock purchase plan</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i316667ec5afd4cb7a006803d0a1e78e2_I20210327" decimals="-3" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmRjZmM0MWM1MThlMzRiMjA4ZGY4YjAwNmRhOTMzNzBjL3RhYmxlcmFuZ2U6ZGNmYzQxYzUxOGUzNGIyMDhkZjhiMDA2ZGE5MzM3MGNfNC0xLTEtMS0w_bf48b6a9-dd2c-454e-b1a7-7a00424ca5cc">973</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i05ad810c16c74d3086a67614c59b1eab_D20201227-20210327" format="ixt-sec:duryear" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmRjZmM0MWM1MThlMzRiMjA4ZGY4YjAwNmRhOTMzNzBjL3RhYmxlcmFuZ2U6ZGNmYzQxYzUxOGUzNGIyMDhkZjhiMDA2ZGE5MzM3MGNfNC0zLTEtMS0w_53c1549a-4ac9-41df-9923-cf6dc1828398">0.86</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total unrecognized stock-based compensation expense</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmRjZmM0MWM1MThlMzRiMjA4ZGY4YjAwNmRhOTMzNzBjL3RhYmxlcmFuZ2U6ZGNmYzQxYzUxOGUzNGIyMDhkZjhiMDA2ZGE5MzM3MGNfNS0xLTEtMS0w_ac29a2f2-3599-48eb-af2a-b51ad33abb1f">36,121</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" format="ixt-sec:duryear" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmRjZmM0MWM1MThlMzRiMjA4ZGY4YjAwNmRhOTMzNzBjL3RhYmxlcmFuZ2U6ZGNmYzQxYzUxOGUzNGIyMDhkZjhiMDA2ZGE5MzM3MGNfNS0zLTEtMS0w_3b4ab3ed-d573-46a9-8e05-4e6220a98965">1.99</ix:nonNumeric></span></td></tr></table></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div id="i9c89e3d57c9546d7826f58de281429d9_67"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 11 &#8212; <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:EarningsPerShareTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RleHRyZWdpb246NGIwMzgxYjk0MWJjNDA3ZWJmOGZkMmI5ZjU4OTRjN2JfMTc5_d3730163-15af-4090-bbe7-8b80a9982c45" continuedAt="i239221a790fc44d5ba7cb10f33085af8" escape="true">Net Income per Share</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="i239221a790fc44d5ba7cb10f33085af8"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RleHRyZWdpb246NGIwMzgxYjk0MWJjNDA3ZWJmOGZkMmI5ZjU4OTRjN2JfMTgx_c85a1206-d705-4126-8c34-954450a65451" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table reconciles the shares used in calculating basic net income per share and diluted net income per share (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:75.654%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.157%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.159%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted-average shares used in computing basic net income per share</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RhYmxlOmE5NjIyYzk5Y2NhMDRhNWZhZmJmNzdjNDNhZjliODgzL3RhYmxlcmFuZ2U6YTk2MjJjOTljY2EwNGE1ZmFmYmY3N2M0M2FmOWI4ODNfNS0xLTEtMS0w_61e9d6fb-cb3e-4722-8204-8f12f4afcfe9">77,598</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RhYmxlOmE5NjIyYzk5Y2NhMDRhNWZhZmJmNzdjNDNhZjliODgzL3RhYmxlcmFuZ2U6YTk2MjJjOTljY2EwNGE1ZmFmYmY3N2M0M2FmOWI4ODNfNS0zLTEtMS0w_fa7f9496-6d37-451c-9a74-88ab429c66e6">76,005</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add potentially dilutive securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RhYmxlOmE5NjIyYzk5Y2NhMDRhNWZhZmJmNzdjNDNhZjliODgzL3RhYmxlcmFuZ2U6YTk2MjJjOTljY2EwNGE1ZmFmYmY3N2M0M2FmOWI4ODNfNi0xLTEtMS0w_5084fe2d-daf9-47e6-988f-d64d916f66aa">2,390</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RhYmxlOmE5NjIyYzk5Y2NhMDRhNWZhZmJmNzdjNDNhZjliODgzL3RhYmxlcmFuZ2U6YTk2MjJjOTljY2EwNGE1ZmFmYmY3N2M0M2FmOWI4ODNfNi0zLTEtMS0w_5e1dd70d-4bbe-4cbd-8388-119f06ac7d6f">2,505</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted-average shares used in computing diluted net income per share</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RhYmxlOmE5NjIyYzk5Y2NhMDRhNWZhZmJmNzdjNDNhZjliODgzL3RhYmxlcmFuZ2U6YTk2MjJjOTljY2EwNGE1ZmFmYmY3N2M0M2FmOWI4ODNfNy0xLTEtMS0w_23d0b44d-99b6-46e2-a393-59a33fe79308">79,988</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RhYmxlOmE5NjIyYzk5Y2NhMDRhNWZhZmJmNzdjNDNhZjliODgzL3RhYmxlcmFuZ2U6YTk2MjJjOTljY2EwNGE1ZmFmYmY3N2M0M2FmOWI4ODNfNy0zLTEtMS0w_66aa5805-df50-4f5c-8c97-7ff6d56b8161">78,510</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Securities not included as they would have been antidilutive</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RhYmxlOmE5NjIyYzk5Y2NhMDRhNWZhZmJmNzdjNDNhZjliODgzL3RhYmxlcmFuZ2U6YTk2MjJjOTljY2EwNGE1ZmFmYmY3N2M0M2FmOWI4ODNfOS0xLTEtMS0w_ebe7c70b-0a61-43e8-8bde-4ca73e882dcc">3</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RhYmxlOmE5NjIyYzk5Y2NhMDRhNWZhZmJmNzdjNDNhZjliODgzL3RhYmxlcmFuZ2U6YTk2MjJjOTljY2EwNGE1ZmFmYmY3N2M0M2FmOWI4ODNfOS0zLTEtMS0w_b5583fe0-7cc0-41f9-9e26-01bf972e29f7">9</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="text-align:center"><span><br/></span></div><div id="i9c89e3d57c9546d7826f58de281429d9_70"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 12 &#8212; <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83MC9mcmFnOjJkZTEzNDgzYWNlMjRmODViZjBkYWQwMzJmNzU0NTczL3RleHRyZWdpb246MmRlMTM0ODNhY2UyNGY4NWJmMGRhZDAzMmY3NTQ1NzNfNTI5_8ea03f23-e681-4edd-a7cf-cf45ac720903" continuedAt="iafa907c729c9458c9cca2880921671e2" escape="true">Commitments and Contingencies</ix:nonNumeric></span></div><div style="text-align:justify"><span><br/></span></div><ix:continuation id="iafa907c729c9458c9cca2880921671e2" continuedAt="i18680e9d9dfa4625bfa4b3bcda51a574"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Leases</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See Note 13, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Leases</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Contractual Obligations and Commitments</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our contractual obligations and commitments have not materially changed as of March&#160;27, 2021 from those disclosed in our Annual Report on Form 10-K for the year ended December&#160;26, 2020. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Legal Matters</span></div></ix:continuation><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i18680e9d9dfa4625bfa4b3bcda51a574">From time to time, we may be subject to legal proceedings and claims in the ordinary course of business. As of March&#160;27, 2021, and as of the filing of this Quarterly Report on Form&#160;10-Q, we were not involved in any material legal proceedings.</ix:continuation> </span></div><div style="text-align:justify"><span><br/></span></div><div id="i9c89e3d57c9546d7826f58de281429d9_73"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note&#160;13 &#8212; <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:LesseeOperatingLeasesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfOTUy_7b726c59-5fba-40d3-83a9-0793cc03a242" continuedAt="i0191d4ead3a84475a03af5e8c6d35b75" escape="true">Leases</ix:nonNumeric></span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i0191d4ead3a84475a03af5e8c6d35b75" continuedAt="idc9847ba1ada4be9a8002b094008a6a1">We lease real estate space under non-cancelable operating lease agreements for commercial and industrial space, as well as for our corporate headquarters located in Livermore, California. Our leases have remaining terms of <ix:nonNumeric contextRef="ic2b8dfd7239b4fe2aef272a46ae68395_I20210327" format="ixt-sec:duryear" name="us-gaap:LesseeOperatingLeaseTermOfContract" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfMjQ2_58193ac7-2ee5-473b-afa4-0298e0bca5da">1</ix:nonNumeric> to <ix:nonNumeric contextRef="ic8ccc8b2e39946abb7359d53c4a5740e_I20210327" format="ixt-sec:duryear" name="us-gaap:LesseeOperatingLeaseTermOfContract" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfMjUy_8f3da287-cfc0-4cbc-8f48-f005a2e471b6">8</ix:nonNumeric> years, and some leases include options to extend up to <ix:nonNumeric contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" format="ixt-sec:duryear" name="us-gaap:LesseeOperatingLeaseRenewalTerm" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfMzA0_20f9f728-61a3-43bd-bccf-8a4824b84814">20</ix:nonNumeric> years. We also have operating leases for automobiles with remaining lease terms of <ix:nonNumeric contextRef="if0ea874df2bd442183f529523316f9f0_I20210327" format="ixt-sec:duryear" name="us-gaap:LesseeOperatingLeaseTermOfContract" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfMzg0_8a566ec5-bff5-4a3d-8c60-394d1ff71e1b">1</ix:nonNumeric> to <ix:nonNumeric contextRef="id24d49a556714c20b711b5b1ebcdc56d_I20210327" format="ixt-sec:duryear" name="us-gaap:LesseeOperatingLeaseTermOfContract" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfMzkw_73ea78fb-efbd-43c0-bcec-e62d47a4be3e">4</ix:nonNumeric> years. We did not include any of our renewal options in our lease terms for calculating our lease liability as the renewal options allow us to maintain operational flexibility and we are not reasonably certain we will exercise these options at this time. The weighted-average remaining lease term for our operating leases was <ix:nonNumeric contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" format="ixt-sec:duryear" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfNzEz_300c9573-1a04-4919-92f1-d180dc0a98ab">6</ix:nonNumeric> years as of March&#160;27, 2021 and the weighted-average discount rate was <ix:nonFraction unitRef="number" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="4" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfNzY4_081b8317-3ada-4604-bfa9-280a18604395">3.85</ix:nonFraction>%. </ix:continuation></span></div><div style="text-align:justify"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">21</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="idc9847ba1ada4be9a8002b094008a6a1"><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:LeaseCostTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfOTU3_e75836ce-9b95-4083-9c28-be9c70027c71" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of lease expense were as follows (in thousands): </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.315%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.329%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Lease expense:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating lease expense</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjU0OTk3NDQ2ZGUwYjQzYTViMWQyNmExNGQwYTM2MjgxL3RhYmxlcmFuZ2U6NTQ5OTc0NDZkZTBiNDNhNWIxZDI2YTE0ZDBhMzYyODFfMy0xLTEtMS0w_fc5f09f6-858f-4e81-a18e-651acc666c44">2,123</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjU0OTk3NDQ2ZGUwYjQzYTViMWQyNmExNGQwYTM2MjgxL3RhYmxlcmFuZ2U6NTQ5OTc0NDZkZTBiNDNhNWIxZDI2YTE0ZDBhMzYyODFfMy0zLTEtMS0w_037c77a9-858c-4c89-a803-e25fea125ca9">1,924</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Short-term lease expense</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" name="us-gaap:ShortTermLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjU0OTk3NDQ2ZGUwYjQzYTViMWQyNmExNGQwYTM2MjgxL3RhYmxlcmFuZ2U6NTQ5OTc0NDZkZTBiNDNhNWIxZDI2YTE0ZDBhMzYyODFfNC0xLTEtMS0w_71c5ecdc-0887-4228-9e03-1a1e32a9e08e">37</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" name="us-gaap:ShortTermLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjU0OTk3NDQ2ZGUwYjQzYTViMWQyNmExNGQwYTM2MjgxL3RhYmxlcmFuZ2U6NTQ5OTc0NDZkZTBiNDNhNWIxZDI2YTE0ZDBhMzYyODFfNC0zLTEtMS0w_a107510b-29b9-45c1-a34e-fdd491623e2a">40</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Variable lease expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" name="us-gaap:VariableLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjU0OTk3NDQ2ZGUwYjQzYTViMWQyNmExNGQwYTM2MjgxL3RhYmxlcmFuZ2U6NTQ5OTc0NDZkZTBiNDNhNWIxZDI2YTE0ZDBhMzYyODFfNS0xLTEtMS0w_08efa9e0-510b-459b-b957-4bab615403f9">537</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" name="us-gaap:VariableLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjU0OTk3NDQ2ZGUwYjQzYTViMWQyNmExNGQwYTM2MjgxL3RhYmxlcmFuZ2U6NTQ5OTc0NDZkZTBiNDNhNWIxZDI2YTE0ZDBhMzYyODFfNS0zLTEtMS0w_52bcb46e-27b4-4a7b-9b7a-dea5630b65d4">383</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjU0OTk3NDQ2ZGUwYjQzYTViMWQyNmExNGQwYTM2MjgxL3RhYmxlcmFuZ2U6NTQ5OTc0NDZkZTBiNDNhNWIxZDI2YTE0ZDBhMzYyODFfNi0xLTEtMS0w_9636d85a-283f-4b32-a36b-bb99294491d1">2,697</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjU0OTk3NDQ2ZGUwYjQzYTViMWQyNmExNGQwYTM2MjgxL3RhYmxlcmFuZ2U6NTQ5OTc0NDZkZTBiNDNhNWIxZDI2YTE0ZDBhMzYyODFfNi0zLTEtMS0w_e4b09434-f43b-4fc4-a406-915f6ca900b8">2,347</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><div><span><br/></span></div><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfOTU0_38a0ca93-aabf-46de-934f-fffaafd36168" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Future minimum payments under our non-cancelable operating leases were as follows as of March&#160;27, 2021 (in thousands):</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:85.742%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.328%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fiscal Year</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Remainder of 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfMS0yLTEtMS0w_9be83ea8-1917-4c6c-bba9-3ac78eb0f6dd">6,747</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfMi0yLTEtMS0w_4cee426d-e8f7-417e-8380-bb0d95affa4c">8,040</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfMy0yLTEtMS0w_ae54c52e-b013-4ef3-9462-77ed161030cc">6,710</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfNC0yLTEtMS0w_249b7295-4999-49ae-be96-5e9424d513d0">6,297</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfNS0yLTEtMS0w_7d6c5942-d2aa-44e1-9f43-050253af9800">7,814</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="form:LesseeOperatingLeaseLiabilityToBePaidAfterYearFour" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfNi0yLTEtMS0w_1b7938ac-9bbc-41ad-ad73-85e2be7bc22b">14,416</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;Total minimum lease payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfNy0yLTEtMS0w_96db64c2-8870-4b39-9a55-902605135c5a">50,024</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: interest</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfOC0yLTEtMS0w_b3b4c000-3ff3-4060-8a77-df61088ac548">8,982</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;Present value of net minimum lease payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfOS0yLTEtMS0w_e5946a28-90c7-4450-bcbe-87e84b9d958e">41,042</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: current portion</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfMTAtMi0xLTEtMA_22855d56-9917-4b98-9192-43f7388de759">7,557</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;Total long-term operating lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfMTEtMi0xLTEtMA_230d3038-7d42-43df-bbd2-7e5d14db9ae2">33,485</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div id="i9c89e3d57c9546d7826f58de281429d9_76"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note&#160;14 &#8212; <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:RevenueFromContractWithCustomerTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfMjIyNA_31cae02d-02db-42c8-b13f-76a9e25d018f" continuedAt="i6053404f6e754e959c97b0ccc97d35ea" escape="true">Revenue</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="i6053404f6e754e959c97b0ccc97d35ea" continuedAt="i89287570ef3f43febc34877a628ffb96"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Transaction price allocated to the remaining performance obligations:</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> On March&#160;27, 2021, we had $<ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:RevenueRemainingPerformanceObligation" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfMTA4_eace9a4b-f7bc-46f4-85b2-c5d4128af624">6.3</ix:nonFraction> million of remaining performance obligations, which were comprised of deferred service contracts and extended warranty contracts and contracts with overtime revenue recognition that are not yet delivered.&#160;We expect to recognize approximately&#160;<ix:nonFraction unitRef="number" contextRef="i95ccedbfe61e47bfa57b17b6ebc66ed3_I20210327" decimals="3" name="us-gaap:RevenueRemainingPerformanceObligationPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfMjg4_29a7c345-6d6b-48e1-9bff-3f635f4f7608">74.5</ix:nonFraction>% of our remaining performance obligations as revenue in the remainder of fiscal 2021, approximately <ix:nonFraction unitRef="number" contextRef="ia8e88a385c6347bc8a4d9e674e9ca6aa_I20210327" decimals="3" name="us-gaap:RevenueRemainingPerformanceObligationPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfMzkw_4d588885-ab65-44dd-bc32-75fb5c99582b">16.6</ix:nonFraction>% in fiscal 2022, and approximately <ix:nonFraction unitRef="number" contextRef="i2e3d772ffb614ae983ec9483968502d3_I20210327" decimals="3" name="us-gaap:RevenueRemainingPerformanceObligationPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfNDI3_2e013d9e-6f65-4fb8-994b-a7e4e6b902af">8.9</ix:nonFraction>% in fiscal 2023 and thereafter. The foregoing excludes the value of other remaining performance obligations as they have original durations of one year or less, and also excludes information about variable consideration allocated entirely to a wholly unsatisfied performance obligation.  </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Contract balances:</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;The timing of revenue recognition may differ from the timing of invoicing to customers. Accounts receivable is recorded at the invoiced amount, net of an allowance for doubtful accounts. A receivable is recognized in the period we deliver goods or provide services or when our right to consideration is unconditional. A contract asset is recorded when we have performed under the contract but our right to consideration is conditional on something other than the passage of time. Contract assets as of March&#160;27, 2021 and December&#160;26, 2020 were $<ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerAssetNet" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfMTI1NQ_9996e44c-3604-4b49-bfc1-3793ac6104c7">4.8</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerAssetNet" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfMTI2Mg_e3edcb8a-daba-46f7-a819-af5069fb873d">3.7</ix:nonFraction> million, respectively, and are reported on the Condensed Consolidated Balance Sheets as a component of Prepaid expenses and other current assets.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contract liabilities include payments received in advance of performance under a contract and are satisfied as the associated revenue is recognized. Contract liabilities are reported on the Condensed Consolidated Balance Sheets at the end of each reporting period as a component of Deferred revenue and Other liabilities. Contract liabilities as of March&#160;27, 2021 and December&#160;26, 2020 were $<ix:nonFraction unitRef="usd" contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerLiability" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfMTc2OA_1efb9166-1b6b-4e85-b8c4-0fdf10563fac">19.9</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerLiability" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfMTc3NQ_35ed0090-34a4-4f59-90fe-c29093035152">22.2</ix:nonFraction> million, respectively. During the three months ended March&#160;27, 2021, we recognized $<ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfMTgzOA_2fba7e2b-7129-498b-a651-6f7e98d8c603">9.3</ix:nonFraction> million of revenue, that was included in contract liabilities as of December&#160;26, 2020.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Costs to obtain a contract:</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> We generally expense sales commissions when incurred as a component of Selling, general and administrative expense, as the amortization period is typically less than one year. </span></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><ix:continuation id="i89287570ef3f43febc34877a628ffb96" continuedAt="i0b27e86175ca42e79a4216d368757d2b"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Revenue by Category: </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Refer to Note 15, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Operating Segments and Enterprise-Wide Information</span></ix:continuation><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i0b27e86175ca42e79a4216d368757d2b">, for further details.</ix:continuation> </span></div><div><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">22</span></div></div></div><div id="i9c89e3d57c9546d7826f58de281429d9_79"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note&#160;15 &#8212; <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:SegmentReportingDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RleHRyZWdpb246MGRlZGIxZmQ5ZGI4NDFiODlkNjg1MTZmOTUwNGIzZmJfMTIwOA_65743fa7-fe87-49fc-aeed-3c9e0255bbd4" continuedAt="i6ce4fb7f5d36478487b9ae4c57dcf875" escape="true">Operating Segments and Enterprise-Wide Information</ix:nonNumeric></span></div><div style="text-align:justify"><span><br/></span></div><ix:continuation id="i6ce4fb7f5d36478487b9ae4c57dcf875"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our chief operating decision maker (&#8220;CODM&#8221;) is our Chief Executive Officer, who reviews operating results to make decisions about allocating resources and assessing performance for the entire company. We operate in <ix:nonFraction unitRef="segment" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:NumberOfReportableSegments" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RleHRyZWdpb246MGRlZGIxZmQ5ZGI4NDFiODlkNjg1MTZmOTUwNGIzZmJfMjgy_6390a7f5-3405-463d-8f12-c06be0a6cedc">two</ix:nonFraction> reportable segments consisting of the Probe Cards segment and the Systems segment. <ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RleHRyZWdpb246MGRlZGIxZmQ5ZGI4NDFiODlkNjg1MTZmOTUwNGIzZmJfMTIxMQ_a05b34f0-46af-4d29-8451-861a5b4681cb" continuedAt="i85968c8e34c547a8b6bc553175a69c92" escape="true">The following table summarizes the operating results by reportable segment (dollars in thousands):</ix:nonNumeric></span></div><div style="margin-bottom:6pt"><ix:continuation id="i85968c8e34c547a8b6bc553175a69c92"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:11.784%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.295%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.002%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.002%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.295%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.295%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.002%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.002%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.299%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="45" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="21" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27, 2021</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="21" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28, 2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Probe Cards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Systems</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate and Other</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Probe Cards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Systems</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate and Other</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iae880a7f70674f27a92416741be5ae48_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfMy0xLTEtMS0w_867f77ea-dc69-4d2f-8e65-8a2663380131">158,898</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic0ebe9afd5434ebb846f70dd43904b59_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfMy0zLTEtMS0w_a2540246-abb2-4b67-b337-5051122df4d6">27,738</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie9fd9bd28cb34b25917766a905b820c1_D20201227-20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfMy01LTEtMS0w_0f8024cd-af23-4e01-b196-49e19eda79e2">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfMy03LTEtMS0w_92a5b9c8-3cc5-46c7-89b0-315b994f6abb">186,636</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1d1eb6004c3c4713b6b35cfd94353d5c_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfMy05LTEtMS0w_dffd74ad-60ec-47cf-bd5b-763e2b3d453d">134,715</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8d11f1aa84f742768a9dbdf9a7d9d40e_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfMy0xMS0xLTEtMA_d6058ef9-51a9-47c5-9059-8c738686db0e">26,038</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib46109fb73454d9ab19c49b1bebeba65_D20191229-20200328" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfMy0xMy0xLTEtMA_c4a363c9-13f1-4aef-924f-40b4ee7fb6e8">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfMy0xNS0xLTEtMA_7592d9e3-676d-466b-973e-f21e192aa729">160,753</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit </span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iae880a7f70674f27a92416741be5ae48_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNC0xLTEtMS0w_6d90d150-8e70-4382-b5f9-b6190b0bfe6f">70,315</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic0ebe9afd5434ebb846f70dd43904b59_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNC0zLTEtMS0w_0544cc3b-6ea8-465e-b7fd-b5d8d5857e73">13,599</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ie9fd9bd28cb34b25917766a905b820c1_D20201227-20210327" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNC01LTEtMS0w_1795441a-5446-46c8-9053-892861dca501">7,208</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNC03LTEtMS0w_a24b58e6-b2d7-42f9-b53c-37d5e349866c">76,706</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1d1eb6004c3c4713b6b35cfd94353d5c_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNC05LTEtMS0w_3bf20f9e-febe-414b-8af7-44abacff404c">60,743</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8d11f1aa84f742768a9dbdf9a7d9d40e_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNC0xMS0xLTEtMA_d2b0fcea-4aca-4114-bf07-4515c9f2e590">13,334</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ib46109fb73454d9ab19c49b1bebeba65_D20191229-20200328" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNC0xMy0xLTEtMA_2f5177e6-cff3-40dd-8374-4742380c9047">6,687</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNC0xNS0xLTEtMA_6a583a6c-18e8-4d89-b612-88dd61499fe2">67,390</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross margin</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="iae880a7f70674f27a92416741be5ae48_D20201227-20210327" decimals="3" name="form:GrossMarginPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNS0xLTEtMS0w_075232ea-1ab7-41aa-9471-eac63994b581">44.3</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ic0ebe9afd5434ebb846f70dd43904b59_D20201227-20210327" decimals="3" name="form:GrossMarginPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNS0zLTEtMS0w_3a88cc66-7af4-4743-bd27-a27331427de8">49.0</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ie9fd9bd28cb34b25917766a905b820c1_D20201227-20210327" decimals="3" format="ixt:zerodash" name="form:GrossMarginPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNS01LTEtMS0w_219dbb91-b5aa-4b23-8e73-2079ccc1c9ab">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="3" name="form:GrossMarginPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNS03LTEtMS0w_55aa9711-5345-4cd1-a66a-7f247b64ab0f">41.1</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i1d1eb6004c3c4713b6b35cfd94353d5c_D20191229-20200328" decimals="3" name="form:GrossMarginPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNS05LTEtMS0w_8bf3c0d0-6eac-469d-ab68-22a940cb9ee5">45.1</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i8d11f1aa84f742768a9dbdf9a7d9d40e_D20191229-20200328" decimals="3" name="form:GrossMarginPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNS0xMS0xLTEtMA_35670c42-ea1a-4784-a16d-35c6646e3960">51.2</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ib46109fb73454d9ab19c49b1bebeba65_D20191229-20200328" decimals="3" format="ixt:zerodash" name="form:GrossMarginPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNS0xMy0xLTEtMA_81a5cb3a-55db-400e-9fac-08598a033105">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="3" name="form:GrossMarginPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNS0xNS0xLTEtMA_085d5dc0-8f5c-4149-9973-d77afa57250a">41.9</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr></table></ix:continuation></div><div><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.122%"><tr><td style="width:1.0%"></td><td style="width:11.879%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.224%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.224%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.224%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.224%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.224%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.224%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.371%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.383%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Operating results provide useful information to our management for assessment of our performance and results of operations. Certain components of our operating results are utilized to determine executive compensation along with other measures. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Corporate and Other includes unallocated expenses relating to amortization of intangible assets, inventory and fixed asset fair value adjustments due to acquisitions and share-based compensation, which are not used in evaluating the results of, or in allocating resources to, our reportable segments.</span></div><div style="text-align:justify"><span><br/></span></div><ix:nonNumeric contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" name="us-gaap:DisaggregationOfRevenueTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RleHRyZWdpb246MGRlZGIxZmQ5ZGI4NDFiODlkNjg1MTZmOTUwNGIzZmJfMTIxOA_0fd4b9b5-0145-4daf-a765-635d7ff504d4" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certain revenue category information by reportable segment was as follows (in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:41.443%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.818%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.818%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.818%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.818%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.818%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.117%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27, 2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28, 2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Probe Cards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Systems</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Probe Cards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Systems</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Market:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foundry &amp; Logic</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i17efef4193d241de9fd4b4aa18935ad2_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNC0xLTEtMS0w_11dc57f9-45a3-4099-ab68-227e36cbaa13">113,410</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7da0b92a26ea4b8385b19301bd68ef11_D20201227-20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNC0zLTEtMS0w_d3e115d5-7588-4c61-befe-3e878a240929">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i06d0926b712243129dae4fa849a0a9ea_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNC01LTEtMS0w_cc743c12-419a-46d1-99d8-e382dfe9a04a">113,410</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i37881b07144e4eea8645bdfdfe097bd5_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNC03LTEtMS0w_9bd357b8-2e3e-455a-a539-d6c8a5259f6c">105,745</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="icaa7b11a536247a8bfa781f53efdf44a_D20191229-20200328" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNC05LTEtMS0w_69cc803c-44fa-4c00-8495-5029fd576032">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3e9efdad47524942afd5e27a23964d32_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNC0xMS0xLTEtMA_7aca126b-e57d-4bde-b48d-10e120bc1396">105,745</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">DRAM</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia931704fac454b338df11d146e9a2eff_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNS0xLTEtMS0w_ad2ca734-42e2-41f6-93e2-d94e01e34db3">33,898</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5cfc6e078c914c129e8355f84fa7d747_D20201227-20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNS0zLTEtMS0w_4ec12593-6e98-4a2f-82fd-7e6f58ad0131">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibcae4145fd9c44f4b14aa1fe329fbf70_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNS01LTEtMS0w_88ad5758-61f7-4b39-b4d6-f3b9d390a39c">33,898</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9795e20452c245b99fdd733af9bd9df2_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNS03LTEtMS0w_2699215e-6e39-48a1-9fd5-d21df90612cb">24,696</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6a137e953a044d048cd400c5ecf42ff1_D20191229-20200328" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNS05LTEtMS0w_ce576c3f-8b62-46b9-96e3-911727ddd497">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i39be1a79f7ae423f96574447b73ca5e2_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNS0xMS0xLTEtMA_427bd33c-5521-472d-9ede-d9b92153527a">24,696</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Flash</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8d01e67aa3a746e084149947068b844e_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNi0xLTEtMS0w_a30283f9-79fa-45bb-83cb-975000a44b63">11,590</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id191128bfc424119bcbf275f3e530dd4_D20201227-20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNi0zLTEtMS0w_0047c81b-e26f-45d7-8d35-71c6732560ed">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5bd4e3f47e33489aaf04bc6b4e9b7f89_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNi01LTEtMS0w_178f72a8-c356-4f01-9a58-1a98ca9928fc">11,590</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2a8b381a2ab94c69856c5a2eb280a578_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNi03LTEtMS0w_3c8e8ce8-8106-444b-a0d7-a88dd49d8825">4,274</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i97fea9c8fd424e59b65b256f1c86d121_D20191229-20200328" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNi05LTEtMS0w_36181869-ca0f-41ae-8d99-8f9d0dc682f1">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7bc781a5253844f3877a8b110caec858_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNi0xMS0xLTEtMA_ee2f2b17-7a1c-4c73-a4fe-dbc18517fc6e">4,274</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Systems</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic16eb573ec524ec7aaaf62f8d10f71e4_D20201227-20210327" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNy0xLTEtMS0w_17218424-8259-424e-aaf7-c496d7f4c854">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i89fe92f3430b474f83a23d49a6dbafc2_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNy0zLTEtMS0w_c00b8a0c-8746-40d9-91c7-fd14c1377d80">27,738</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie705bdb63537443298fbcfcebd162058_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNy01LTEtMS0w_cb84f106-fd91-4cad-9377-41ab369fc8bf">27,738</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9e79fb4d68724345b39e4b4bc4eb7c01_D20191229-20200328" decimals="-3" format="ixt:zerodash" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNy03LTEtMS0w_88703687-47f0-4331-a462-428a3667a130">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0679901700b2486f9c867b8e08b17728_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNy05LTEtMS0w_f119070e-76ab-467e-8bc2-e0dab6a1ee17">26,038</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4759480c0617414696c39f2e8a2409e7_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNy0xMS0xLTEtMA_e221b411-0263-4f97-98bc-232e78a1bb14">26,038</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7e83c001dbc94677a59ca9c262df771e_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfOC0xLTEtMS0w_361cc899-e0e5-4252-8b12-436321490a3c">158,898</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id7ca4f9333334d088e8e33a90870e029_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfOC0zLTEtMS0w_a203b938-b4c4-4eaf-a2f7-ae85463e3b05">27,738</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfOC01LTEtMS0w_44db932c-480b-4321-803b-26293adfdc22">186,636</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibbdd3f9e212d4506a836ccb10f6e47b9_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfOC03LTEtMS0w_981c43ee-4f30-442e-8b7d-b0bd0a5125e9">134,715</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id0718e19df664d0c8fb6766b10fd3625_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfOC05LTEtMS0w_3ff9bca9-11b4-4564-97ca-9620a75c7150">26,038</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfOC0xMS0xLTEtMA_b804a6a7-52d6-4188-b472-fe2469a24090">160,753</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Timing of revenue recognition:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Products transferred at a point in time</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idfb6a757a29d49308db33aeaef39a6e3_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTAtMS0xLTEtMA_8dcb8e83-652b-4252-bf5a-9ffca9922a56">158,476</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ba9846df54147c19e3689b354c4abb7_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTAtMy0xLTEtMA_249c3f61-a525-4cd5-b5cd-2c6ad696cee9">24,671</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4688ad32de06414e9218db7ef867f100_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTAtNS0xLTEtMA_08b1fa10-54ea-4856-b915-355c881f2597">183,147</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i339f727e2f4641348d09b357bc256118_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTAtNy0xLTEtMA_1f9ad9f5-043b-4db5-8f4c-9f899d0cfbf3">134,069</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i958689f927964444a9005b48f3f1cd18_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTAtOS0xLTEtMA_c95e2af4-b451-4e85-a403-4a007bf260a2">24,858</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i680008eb5c844aa2a28d1642a0f15c8c_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTAtMTEtMS0xLTA_a169ced5-6521-4a6b-92f0-ecfac5e52dc5">158,927</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Products and services transferred over time</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0f9adfb09b8f4ab6ac2ab399cbac9a3e_D20201227-20210327" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTEtMS0xLTEtMA_464bce0b-0abd-4f4a-a696-176b3d52175f">422</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i56062132d29440f281913bf199e1ea1c_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTEtMy0xLTEtMA_7846961c-acf8-4fe7-8735-3c31602672f9">3,067</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib36601237b6d4b7b966d7a550eccee3f_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTEtNS0xLTEtMA_08fe274a-e441-42c0-9fcc-c0f84c522f40">3,489</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iad4ec9255c74464982894b272350432b_D20191229-20200328" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTEtNy0xLTEtMA_5708e8e2-cb80-49fb-ad98-86c454e9eb63">646</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i47cf58e14027485da9f1806f52ec2d8d_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTEtOS0xLTEtMA_66447177-14d4-45ec-af5e-efb3489829ac">1,180</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i508e3a788e944a4584d46e5d7b530c65_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTEtMTEtMS0xLTA_8b79d80c-4b39-4f38-9183-bc9a88ddc503">1,826</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7e83c001dbc94677a59ca9c262df771e_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTItMS0xLTEtMA_3e185425-15b9-47e3-bdf2-63e23faed72c">158,898</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id7ca4f9333334d088e8e33a90870e029_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTItMy0xLTEtMA_621889c8-b314-4879-a538-33685cb55425">27,738</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTItNS0xLTEtMA_7440a9cd-09e6-4d01-b314-9c71ca384c1f">186,636</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibbdd3f9e212d4506a836ccb10f6e47b9_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTItNy0xLTEtMA_a4679346-66a4-47c2-b669-9e74baf06b6b">134,715</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id0718e19df664d0c8fb6766b10fd3625_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTItOS0xLTEtMA_2ca0d3f2-d2f9-4afa-9f5b-dd875d1ebae3">26,038</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTItMTEtMS0xLTA_89cff7e7-a02f-4559-8161-b82c7672cc9d">160,753</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Geographical region:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Taiwan</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7eaa7209f1e1493aa0245c1722e66c95_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTQtMS0xLTEtMA_2a40b490-9bf1-4ba5-b686-d0eca91c462c">44,734</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3857b626483842778a520d0a41280961_D20201227-20210327" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTQtMy0xLTEtMA_bd1d2245-3ca5-463f-b264-14be81285872">846</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic122ffb3a2d64e3b969ffc2c161d5bf3_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTQtNS0xLTEtMA_daf8d3f4-6ae1-42e0-a788-7996c1edba0b">45,580</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i3d85c4aaf19b4cb28ce656d9d253bb5a_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTQtNy0xLTEtMA_34909a45-3e22-412b-bc5a-dce01c512423">30,439</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i032dbb7cc2674d6d8ff265a8c2185bd6_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTQtOS0xLTEtMA_520efff6-8f1b-4121-9168-6f119a52590e">1,341</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i654d15775fc749c4b27da9372fb7a810_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTQtMTEtMS0xLTA_b442d6f9-ecd0-45b8-809d-74c1458559f7">31,780</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">China</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic1accfe97f8f484d878b703e5c40005c_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTctMS0xLTEtMA_47a78131-ce8a-484b-9fbf-b6f15da4e0b7">37,831</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i40fb54f5e8714d47832f057095fdd640_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTctMy0xLTEtMA_6f4ce259-dcd1-4464-88ab-7fa58e32e3db">4,794</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i53ff53ba243f4f0cb599eb93c6dfc567_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTctNS0xLTEtMA_09522092-f200-4ab8-a0b0-c7efcaa6bfce">42,625</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib347dd7f3a714612afde16371c64f12f_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTctNy0xLTEtMA_d0dcc960-c296-4091-89b7-f3a46d05cbf9">37,280</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2b911ab200b84c358dddd7385b29bcdc_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTctOS0xLTEtMA_c894ac96-5d9e-4705-87e2-547b254f3db3">6,362</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9d1f83fb61604c4e86f699bb0e54187c_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTctMTEtMS0xLTA_d6820e8d-8703-4414-b6c0-70cd0f211061">43,642</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i73700f90cb854d8b80da4f457c252a42_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTUtMS0xLTEtMA_20559c68-51a1-4917-a2c5-9cf774c6ead4">21,308</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie59a8f92898a4fa5a4601fc6fcaac1df_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTUtMy0xLTEtMA_2fab3526-b931-4124-8f19-ce2aaff626c6">8,178</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0ddb8609fb5244fc9f93a64b8cea3bda_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTUtNS0xLTEtMA_142f3fce-bda4-4e39-be6e-fa763d9f3cf0">29,486</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibf4405a844544411add62f40112d7546_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTUtNy0xLTEtMA_ab53e292-0081-47b1-9e1d-16e910ec2377">25,611</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia880de968dde4a95ab03f10c63cf1cef_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTUtOS0xLTEtMA_c6a612c4-0b44-42c9-9501-77e702154a9b">6,305</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i80f0323a25944c2682fe3fc1ad38512c_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTUtMTEtMS0xLTA_87a96832-5b0d-4723-85a4-c54c227c9c5a">31,916</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:5.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Asia-Pacific</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">1</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i16fe4cc5dcee471d8123f16d8d072680_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjAtMS0xLTEtMA_1ac22dad-820b-4c1c-8332-4f99e66ae590">27,878</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie42fe6855e514f228ed0815382321ca8_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjAtMy0xLTEtMA_48301159-5a6b-4799-9269-dc170767dbf1">1,080</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i682500a8836e44ceb66954588f17cc72_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjAtNS0xLTEtMA_de4548a3-fd75-4d8f-aa89-671edb6b662e">28,958</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6a69df588ff04e19a7df5ca181bcb236_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjAtNy0xLTEtMA_6803e5ff-ff6f-4ec1-88d2-5d4b9dace6b5">4,455</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i78f63a92bb95483188c38479b8516d32_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjAtOS0xLTEtMA_003e5879-283e-4ab3-88a7-fa35f1fa7bfd">3,408</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i53c327ad0e9e410eb9fb7fb5d0892431_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjAtMTEtMS0xLTA_1a378010-2d83-4486-891d-b2aa848d052b">7,863</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">South Korea</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idd07a09dea0243c881f108ab527080a5_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTYtMS0xLTEtMA_aac18b3f-d4f7-4214-82a3-0b77168c1d51">18,001</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i39a61f079ac545feb8809d5a842ee8b1_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTYtMy0xLTEtMA_dab27f5f-fb43-485a-adfd-d04ed3d6c6e2">1,084</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i58b62a5b2e7e4947988950b5e020b47e_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTYtNS0xLTEtMA_4ea56eaa-adef-4710-b485-0a8ec2f9c03e">19,085</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4e660b622ae94bc58ee3278d89212060_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTYtNy0xLTEtMA_d25121d4-2903-4516-a2c8-de146ff73f67">13,692</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i015d7e55169940f9987b4c2e71a7aa16_D20191229-20200328" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTYtOS0xLTEtMA_45361d60-fe5c-4f6e-ba80-30d11dd6bb9b">396</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i09bb6bc9f3d04815b88619a3f2487ac9_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTYtMTEtMS0xLTA_983f6d04-adc5-4265-bbf9-26d39d56d213">14,088</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Europe</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4982510ad45e40c2b807c2e86413bb07_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTktMS0xLTEtMA_16f29e15-1c1f-48de-9e5f-a68050283824">2,833</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i64db8a68c3594e57a749760302f56fc8_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTktMy0xLTEtMA_0a2f8620-eed4-4b25-9039-e6af480f6b4c">7,166</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4492ef2d17954c888e705d4c19f02f29_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTktNS0xLTEtMA_55861a6f-6e42-46ef-bafd-1cf102efebbd">9,999</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibdc0fcb7d49c4728b3cf73f327c1a0b4_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTktNy0xLTEtMA_cc0e8431-e9f1-481d-986a-908b3e6d5f59">16,210</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i14acbd2358a1447bab4e14686665e5bc_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTktOS0xLTEtMA_d71b54d8-0fa9-4dc8-ae87-e4e39f913723">4,833</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6c0294018ff9442a960d081a3653d051_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTktMTEtMS0xLTA_1122d00b-6ae1-49d0-89ab-f4c551a78d7a">21,043</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Japan</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i69c600524b554299a6aadf4d658f8ad6_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTgtMS0xLTEtMA_556e5fc4-375a-4a3a-8594-1a95a16fa82a">5,249</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i34afca68b1144a9183ea6da159a7050c_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTgtMy0xLTEtMA_02816916-0eee-42a6-80a1-125321309cac">4,072</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id487f2a1555d4150a10a17197475ff82_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTgtNS0xLTEtMA_3131ac71-1ca6-4455-9c04-110051d6c039">9,321</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i41c8414a4aec489093402d27d3a92a91_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTgtNy0xLTEtMA_f683b050-8b2e-4cda-ae0b-1e5908f5c9e2">5,535</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0435f4eeea3e474183fcc858a4ba9981_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTgtOS0xLTEtMA_74901e0f-b35b-403c-ac73-26cd873d2eb4">2,835</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1484b211f9c94f359a281ec877dcfd16_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTgtMTEtMS0xLTA_b5b8df18-7f2d-44e1-bbcc-296fd634892a">8,370</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Rest of the world</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7205a4b7535c4d5881aa9c21967f2996_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjEtMS0xLTEtMA_e7dff2be-165a-4b65-a406-0ebc54f1ae15">1,064</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iac2687805b774ca6955d6ca8c74cb17b_D20201227-20210327" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjEtMy0xLTEtMA_a847afd6-f435-4394-a854-5cc68a2f9edf">518</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1dcc3d38bd6a498f85e6e5bee8b57b2f_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjEtNS0xLTEtMA_b51375af-7d58-42a4-97e2-01d17114f953">1,582</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie8fb6452425e4ec18b22ff7303ac3204_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjEtNy0xLTEtMA_163a59c0-2267-4dca-88a9-13083de7ebb0">1,493</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i39aecdec956e40c096226f6afc35944c_D20191229-20200328" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjEtOS0xLTEtMA_2944ba5f-c029-4a94-9c58-3516d6fddfec">558</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic64b1395f36741988775a19212150652_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjEtMTEtMS0xLTA_fdb3c02a-60b8-4ab0-a818-32910abad5c2">2,051</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7e83c001dbc94677a59ca9c262df771e_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjItMS0xLTEtMA_a2f8ad95-25e6-4770-bba9-21984c4565be">158,898</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id7ca4f9333334d088e8e33a90870e029_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjItMy0xLTEtMA_eef92922-1700-42ff-9f33-0cb6663e3fae">27,738</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjItNS0xLTEtMA_7ce108b2-8814-43cc-bde1-232cd0360653">186,636</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibbdd3f9e212d4506a836ccb10f6e47b9_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjItNy0xLTEtMA_2615c9d2-d383-4b11-b0a5-cf107c53428e">134,715</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id0718e19df664d0c8fb6766b10fd3625_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjItOS0xLTEtMA_09feea30-6c9c-4a13-9920-42fe18bcb894">26,038</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjItMTEtMS0xLTA_54f6ca3d-49ce-4949-b75f-69031949db03">160,753</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:98.976%"><tr><td style="width:1.0%"></td><td style="width:41.883%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.910%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.390%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.910%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.390%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.910%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.390%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.910%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.390%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.910%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.390%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.917%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:120%;position:relative;top:-3.15pt;vertical-align:baseline">1</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"> Asia-Pacific includes all countries in the region except China, Japan, South Korea, and Taiwan, which are disclosed separately.</span></div></ix:nonNumeric></ix:continuation><div style="margin-bottom:8pt"><span><br/></span></div><div style="margin-bottom:8pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">23</span></div></div></div><div id="i9c89e3d57c9546d7826f58de281429d9_85"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 2. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div id="i9c89e3d57c9546d7826f58de281429d9_88"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Cautionary Statement Regarding Forward-Looking Statements</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">This Quarterly Report on Form&#160;10-Q contains forward-looking statements within the meaning of the Securities Exchange Act of 1934 and the Securities Act of 1933, which are subject to risks and uncertainties. The forward-looking statements include statements concerning, among other things, our business strategy, financial and operating results, gross margins, liquidity and capital expenditure requirements and impact of accounting standards. In some cases, you can identify these statements by forward-looking words, such as &#8220;may,&#8221; &#8220;might,&#8221; &#8220;will,&#8221; &#8220;could,&#8221; &#8220;should,&#8221; &#8220;expect,&#8221; &#8220;plan,&#8221; &#8220;anticipate,&#8221; &#8220;believe,&#8221; &#8220;estimate,&#8221; &#8220;predict,&#8221; &#8220;intend&#8221; and &#8220;continue,&#8221; the negative or plural of these words and other comparable terminology.</span></div><div style="text-align:justify;text-indent:13.5pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The forward-looking statements are only predictions based on our current expectations and our projections about future events. All forward-looking statements included in this Quarterly Report on Form&#160;10-Q are based upon information available to us as of the filing date of this Quarterly Report on Form&#160;10-Q. You should not place undue reliance on these forward-looking statements. We have no obligation to update any of these statements. These forward-looking statements involve known and unknown risks, uncertainties and other factors that may cause our actual results, levels of activity, performance or achievements to differ materially from those expressed or implied by these statements, including risks related to general market trends, the benefits of acquisitions and investments, uncertainties related to COVID-19 and the impact of our responses to it, the interpretation and impacts of changes in export controls and other trade barriers, our ability to execute our business strategy and other risks discussed in the section titled &#8220;Risk Factors&#8221; and elsewhere in our Annual Report on Form&#160;10-K for the year ended December&#160;26, 2020 and in this Quarterly Report on Form&#160;10-Q. You should carefully consider the numerous risks and uncertainties described under these sections.</span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following discussion and analysis should be read in conjunction with our condensed consolidated financial statements and the accompanying notes contained in this Quarterly Report on Form&#160;10-Q. Unless expressly stated or the context otherwise requires, the terms &#8220;we,&#8221; &#8220;our,&#8221; &#8220;us&#8221; and &#8220;FormFactor&#8221; refer to FormFactor,&#160;Inc. and its subsidiaries.</span></div><div style="text-align:justify"><span><br/></span></div><div id="i9c89e3d57c9546d7826f58de281429d9_91"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Overview </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">FormFactor, Inc., headquartered in Livermore, California, is a leading provider of test and measurement technologies. We provide a broad range of high-performance probe cards, analytical probes, probe stations, metrology systems, thermal systems and cryogenic systems to both semiconductor companies and scientific institutions. Our products provide electrical and physical information from a variety of semiconductor and electro-optical devices and integrated circuits from early research, through development, to high-volume production. Customers use our products and services to lower production costs, improve yields, and enable development of their complex next-generation products.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We operate in two reportable segments consisting of the Probe Cards segment and the Systems segment. Sales of our probe cards and analytical probes are included in the Probe Cards segment, while sales of our probe stations, metrology systems, and thermal and cryogenic systems are included in the Systems segment.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We generated net income of $19.6 million in the first three months of fiscal 2021 as compared to $15.9 million in the first three months of fiscal 2020. The increase in net income was primarily due to increased revenues, partially offset by higher operating expenses. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Impact of COVID-19</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The COVID-19 pandemic continues to cause serious illness and death in many of the regions that we, our customers and our suppliers operate. The COVID-19 pandemic has resulted in significant governmental actions designed to control the spread of the virus, including the imposition of safety requirements and other orders in locations where we have manufacturing and other activities. We have maintained social distancing, contact tracing, and various other measures to enable our manufacturing sites to continue efficient production.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We believe that we operate in a critical infrastructure industry, as defined by the U.S. Department of Homeland Security. This reduces the current and anticipated impacts of the COVID-19 pandemic on our major customers and suppliers, and upon our operations, as compared to companies that are not part of the critical infrastructure. We currently continue to operate in all of our manufacturing sites at production levels comparable to those prior to the pandemic, albeit subject to certain safety and related constraints. Our other operations are similarly continuing with substantial work-from-home activities. </span></div><div><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">24</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">If the provisions of governmental health orders or other safety requirements applicable to us or our customers or suppliers become more restrictive for an extended period of time, or if we have repeated occurrences of COVID-19 in any of our facilities, we may experience disruptions or delays in manufacturing, product design, product development, customer support, manufacturing and sales, and an overall loss of productivity and efficiency. </span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">While to date the disruptions in our operations, supply chain and customer demand as a result of the COVID-19 pandemic have been somewhat limited, we believe that the COVID-19 pandemic represents a sustained threat that may give rise to a variety of more significant adverse impacts on our business and financial results. For a further description of the uncertainties and business risks associated with the COVID-19 pandemic, see the risk factors discussed in our Annual Report on Form&#160;10-K for the year ended December&#160;26, 2020.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Significant Accounting Policies and the Use of Estimates</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Management&#8217;s Discussion and Analysis and Note 2, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Summary of Significant Accounting Policies</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, to the Consolidated Financial Statements in our 2020 Annual Report on Form 10-K describe the significant accounting estimates and significant accounting policies used in preparation of the Consolidated Financial Statements. Actual results in these areas could differ from management&#8217;s estimates. During the three months ended March&#160;27, 2021, there were no significant changes in our significant accounting policies or estimates from those reported in our Annual Report on Form 10-K for the year ended December&#160;26, 2020, which was filed with the Securities and Exchange Commission on February 22, 2021.</span></div><div style="text-align:justify"><span><br/></span></div><div id="i9c89e3d57c9546d7826f58de281429d9_94"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Results of Operations</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth our operating results as a percentage of revenues for the periods indicated:</span></div><div><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.315%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.329%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenues</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenues</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">58.9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">58.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41.1&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41.9&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating expenses:</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Selling, general and administrative</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total operating expenses</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">29.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30.4&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating income</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12.1&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11.5&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest income</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(0.1)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(0.2)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other income (expense), net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(0.1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12.2&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11.6&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Provision for income taxes</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1.7&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10.5&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9.8&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Revenues by Segment and Market</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:71.560%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.204%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.206%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(In&#160;thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Probe Cards</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158,898&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">134,715&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Systems</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,738&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,038&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">186,636&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">160,753&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">25</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:33.554%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.794%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.297%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.087%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.297%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.297%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.304%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="33" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">% of Revenues</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">% of Revenues</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$ Change</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">% Change</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="33" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Dollars in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Probe Cards Markets:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foundry &amp; Logic</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">113,410&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">60.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">105,745&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">65.8&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,665&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">DRAM</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">33,898&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,696&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15.4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,202&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">37.3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Flash</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,590&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,274&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,316&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">171.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Systems Market:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Systems</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,738&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">14.9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,038&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,700&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">186,636&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">160,753&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">25,883&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16.1&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The increase in Foundry &amp; Logic product revenue for the three months ended March&#160;27, 2021, compared to the three months ended March&#160;28, 2020, was driven principally by increased unit sales to large semiconductor foundries and integrated device manufacturers, demonstrating success in diversifying across our strategic accounts. Additionally, sales have increased due to the demand for components and chipsets for 5G handsets, work and study from home infrastructure spending, and adoption of advanced packaging architectures like heterogeneous integration and high-bandwidth memory (&#8220;HBM&#8221;).</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The relative increase in DRAM product revenue for the three months ended March&#160;27, 2021, compared to the three months ended March&#160;28, 2020, was driven by a decreased customer demand for the three months ended March 28, 2020 as a result of the absorption of large purchases in fiscal 2019, that did not recur in the three months ended March&#160;27, 2021.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The increase in Flash product revenue for the three months ended March&#160;27, 2021, compared to the three months ended March&#160;28, 2020, was driven by increased sales as a result of increased customer demand for our legacy products and increased sales resulting from the acquisition of Baldwin Park. Our revenue in this market continues to be highly variable.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The increase in Systems product revenue for the three months ended March&#160;27, 2021, compared to the three months ended March&#160;28, 2020, was driven by increased sales of cryogenic systems due to the acquisition of High Precision Devices, Inc. (&#8220;HPD&#8221;) and increased sales of thermal sub-systems, partially offset by lower 300mm station sales. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Due to COVID-19, there were various impacts across our segments due to governmental mandates of social distancing. This resulted in a temporary factory shutdown for almost two weeks during our first fiscal quarter of 2020 in certain locations, limiting our manufacturing capacity. We believe these shutdowns negatively affected revenue and impacted our ability to maintain typical lead times, especially in our Probes segment. The plant shutdowns we experienced in the first fiscal quarter of 2020 did not recur in the first fiscal quarter of 2021, which presumably drove some of the increased sales in the first fiscal quarter of 2021 over the first fiscal quarter of 2020, particularly in the Probe Cards segment where the plant shutdowns in 2020 were longer in duration than the shutdowns for the Systems segment.</span></div><div style="text-align:justify"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">26</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Revenues by Geographic Region </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:56.648%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.742%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.087%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.742%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.091%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">% of <br/>Revenue</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">% of <br/>Revenue</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Dollars in&#160;thousands)</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Taiwan</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">45,580&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24.4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">31,780&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">China</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">42,625&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22.8&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43,642&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">29,486&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">31,916&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Asia-Pacific</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">1</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,958&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,863&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4.9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">South Korea</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19,085&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">14,088&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Europe</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,999&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5.4&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">21,043&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Japan</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,321&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,370&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Rest of the world</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,582&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,051&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">186,636&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">160,753&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">1</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Asia-Pacific includes all countries in the region except China, Japan, South Korea and Taiwan, which are disclosed separately.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Geographic revenue information is based on the location to which we ship the product. For example, if a certain South Korean customer purchases through their U.S. subsidiary and requests the products to be shipped to an address in South Korea, this sale will be reflected in the revenue for South Korea rather than the U.S.</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in revenue by geographic region for the three months ended March&#160;27, 2021, compared to the three months ended March&#160;28, 2020, were primarily attributable to changes in customer demand, shifts in customer regional manufacturing strategies, particularly with our large multinational customers, and product sales mix. </span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Cost of Revenues and Gross Margins</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Cost of revenues consists primarily of manufacturing materials, compensation and benefits, shipping and handling costs, manufacturing-related overhead and amortization of certain intangible assets. Our manufacturing operations rely on a limited number of suppliers to provide key components and materials for our products, some of which are a sole source. We order materials and supplies based on backlog and forecasted customer orders. Tooling and setup costs related to changing manufacturing lots at our suppliers are also included in the cost of revenues. We expense all warranty costs, inventory provisions and amortization of certain intangible assets as cost of revenues. </span></div><div style="text-align:justify;text-indent:27pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our gross profit and gross margin were as follows (dollars in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:46.999%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.333%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$ Change</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">% Change</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">76,706&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">67,390&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,316&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13.8&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross margin</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41.9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our gross profit and gross margin by segment were as follows (dollars in thousands): </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:18.198%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.256%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.110%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.256%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.110%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.402%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.268%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="45" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27, 2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28, 2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Probe Cards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Systems</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate and Other</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Probe Cards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Systems</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate and Other</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">70,315&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,599&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(7,208)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">76,706&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">60,743&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,334&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(6,687)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">67,390&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross margin</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">44.3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">49.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">45.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">51.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41.9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Probe Cards</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the three months ended March&#160;27, 2021, gross profit and gross margins decreased compared to the three months ended March&#160;28, 2020, primarily due to less favorable absorption of costs from the mix of volumes through production sites and due </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">27</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">to product mix on a less favorable mix of higher gross margin Foundry &amp; Logic probe card sales combined with higher sales of lower gross margin Flash probe cards.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Systems</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the three months ended March&#160;27, 2021, gross margins decreased compared to the three months ended March&#160;28, 2020, primarily as a result of less favorable product mix, largely related to lower sales of stations and related accessories at somewhat reduced gross margins on the lower volumes, partially offset by higher gross margins on higher sales of thermal sub-systems and additional contribution from HPD, which was acquired in the fourth fiscal quarter of 2020. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Corporate and Other</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Corporate and Other includes unallocated expenses relating to share-based compensation and amortization of intangible assets, inventory and fixed asset fair value adjustments due to acquisitions which are not used in evaluating the results of, or in allocating resources to, our reportable segments. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Overall</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gross profit and gross margins fluctuate with revenue levels, product mix, selling prices, factory loading and material costs. For the three months ended March&#160;27, 2021, compared to the three months ended March&#160;28, 2020, gross profit and gross margins have decreased, primarily on product mix. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Cost of revenues included stock-based compensation expense as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.315%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.329%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock-based compensation</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,335&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">937&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Research and Development</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:46.999%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.333%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$ Change</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">% Change</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Dollars in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,046&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">21,267&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,779&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">% of revenues</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12.9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The increase in research and development expenses in the three months ended March&#160;27, 2021 when compared to the corresponding period in the prior year was primarily driven by increased headcount, increased facilities costs in other general operations, higher project material costs, higher stock-based compensation and higher depreciation expense. These increases are primarily related to our recent acquisitions of Baldwin Park and HPD. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A detail of the changes is as follows (in thousands): </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:84.133%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.667%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 27, 2021 compared to Three Months Ended March 27, 2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Employee compensation costs</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,436&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Project material costs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">304&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock-based compensation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">250&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">114&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other general operations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">675&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,779&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">28</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Research and development included stock-based compensation expense as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.315%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.329%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock-based compensation</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,689&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,439&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Selling, General and Administrative</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:46.999%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.333%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$ Change</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">% Change</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Dollars in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Selling, general and administrative</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30,015&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,693&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,322&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">% of revenues</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The increase in selling, general and administrative in the three months ended March&#160;27, 2021 when compared to the corresponding period in the prior year was primarily due to an increase in headcount, higher stock-based compensation, and increase in amortization of intangibles. These increases are primarily related to the acquisitions of Baldwin Park and HPD, partially offset by decreased travel due to travel restrictions.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A detail of the changes is as follows (in thousands): </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:84.133%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.667%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 27, 2021 compared to Three Months Ended March 27, 2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Employee compensation </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,072&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock-based compensation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">806&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amortization of intangibles</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">202&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Travel related costs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(598)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Consulting fees</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(178)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General operating expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,322&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Selling, general and administrative included stock-based compensation expense as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.315%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.329%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock-based compensation</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,053&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,247&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Interest Income and Interest Expense</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.315%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.329%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Dollars in&#160;thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest Income</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">194&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">685&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted average balance of cash and investments</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">266,209&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">210,791&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted average yield on cash and investments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.38&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1.68&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest Expense</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">180&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">318&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Average debt outstanding</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,263&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">42,854&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted average interest rate on debt</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1.62&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2.50&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">29</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Interest income is earned on our cash, cash equivalents, restricted cash and marketable securities. The decrease in interest income for the three months ended March&#160;27, 2021 compared with the corresponding period of the prior year was attributable to lower investment yields due to the low interest rate environment despite higher invested balances. </span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Interest expense primarily includes interest on our term loans, interest rate swap derivative contracts, and term loan issuance costs amortization charges. The decrease in interest expense for the three months ended March&#160;27, 2021 compared to the same period of the prior year was primarily due to lower outstanding debt balances due to the pay-off of the CMI Term Loan on June 30, 2020, partially offset by the Building Term Loan that originated in the second quarter of 2020. Interest expense was also lower due to lower average interest rates on the outstanding debt.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Other Income (Expense), Net </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other income (expense), net, primarily includes the effects of foreign currency impact and various other gains and losses.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Provision for Income Taxes </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:72.438%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.765%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.767%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(In&#160;thousands,&#160;except&#160;percentages)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Provision for income taxes</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,206&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,816&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Effective tax rate</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">14.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Provision for income taxes reflects the tax provision on our operations in foreign and U.S. jurisdictions, offset by tax benefits from tax credits and the foreign-derived intangible income (&#8220;FDII&#8221;) deduction.  Our effective tax rate may vary from period to period based on changes in estimated taxable income or loss by jurisdiction, changes to the valuation allowance, changes to U.S. federal, state or foreign tax laws, changes in ASC 718 stock-based compensation expense/benefit, future expansion into areas with varying country, state, and local income tax rates, and deductibility of certain costs and expenses by jurisdiction.  We have utilized our previous net operating loss carryforwards, and expect the FDII deduction and corresponding benefit to be available, resulting in a decrease from the U.S. statutory rate and included in our worldwide effective tax rate for the year ending December 25, 2021. </span></div><div><span><br/></span></div><div><span><br/></span></div><div id="i9c89e3d57c9546d7826f58de281429d9_97"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Liquidity and Capital Resources</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Capital Resources</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our working capital was $351.5 million at March&#160;27, 2021, compared to $332.5 million at December&#160;26, 2020. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Cash and cash equivalents primarily consist of deposits held at banks and money market funds. Marketable securities primarily consist of U.S. treasuries and corporate bonds. We typically invest in highly-rated securities with low probabilities of default. Our investment policy requires investments to be rated single A or better, and limits the types of acceptable investments, issuer concentration and duration of the investment. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our cash, cash equivalents and marketable securities totaled approximately $267.7 million at March&#160;27, 2021, compared to $255.0 million at December&#160;26, 2020. We believe that we will be able to satisfy our working capital requirements and scheduled term loan repayments for at least the next twelve months with the liquidity provided by our existing cash, cash equivalents, marketable securities and cash provided by operations. To the extent necessary, we may consider entering into short and long-term debt obligations, raising cash through a stock issuance, or obtaining new financing facilities, which may not be available on terms favorable to us. Our future capital requirements may vary materially from those now planned. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The COVID-19 pandemic has negatively impacted the global economy, disrupted global supply chains and created significant volatility and disruption of financial markets. An extended period of global supply chain and economic disruption could materially affect our business, results of operations, access to sources of liquidity and financial condition. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">If we are unsuccessful in maintaining or growing our revenues, maintaining or reducing our cost structure (in response to a potential reduction in demand due to an industry downturn, COVID-19, or other event), or increasing our available cash through debt or equity financings, our cash, cash equivalents and marketable securities may decline.</span></div><div style="text-align:justify"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">30</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We utilize a variety of tax planning and financing strategies to manage our worldwide cash and deploy funds to locations where needed. As part of these strategies, we indefinitely reinvest a portion of our foreign earnings. Should we require additional capital in the United States, we may elect to repatriate indefinitely-reinvested foreign funds or raise capital in the United States.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Cash Flows</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth our net cash flows from operating, investing and financing activities:</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.315%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.329%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(In thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net cash provided by operating activities</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,356&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">39,339&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net cash used in investing activities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(39,922)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(5,442)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net cash used in financing activities</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,768)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(9,071)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Operating Activities&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net cash provided by operating activities for the three months ended March&#160;27, 2021 was primarily attributable to net income of $19.6 million and net non-cash expenses of $27.4 million, further impacted by changes in operating assets and liabilities, as explained below. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts receivable, net, decreased $4.1 million to $103.5 million at March&#160;27, 2021, compared to $107.6 million at December&#160;26, 2020, as a result of lower revenue for the three months ended March 27, 2021, compared to the revenue for the three months ended December 26, 2020. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories, net, increased $5.5 million to $104.7 million at March&#160;27, 2021, compared to $99.2 million at December&#160;26, 2020, as a result of anticipated projected customer demand.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts payable increased $5.7 million to $67.7 million at March&#160;27, 2021, compared to $62.0 million at December&#160;26, 2020, as a result of timing of payments to vendors. Accrued liabilities decreased $11.8 million to $43.5 million at March&#160;27, 2021, compared to $55.3 million at December&#160;26, 2020, as a result of timing of payments for accrued taxes payable, a decrease in accrued variable compensation, decrease in employee compensation accrual, and decrease in employee stock purchase plan accrual from the issuance of common stock to employees under our employee stock purchase plan.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Investing Activities</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net cash used in investing activities for the three months ended March&#160;27, 2021 was primarily related to $13.5 million of acquisition of property, plant and equipment and $26.5 million of net cash used to purchase marketable securities. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Financing Activities</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net cash used in financing activities for the three months ended March&#160;27, 2021 primarily related to $2.4 million of principal payments made towards the repayment of our term loans, $1.1 million related to tax withholding associated with the net share settlements of our equity awards, and $5.7&#160;million used to purchase common stock under our stock repurchase program, partially offset by $5.5 million of proceeds received from issuances of common stock under our employee stock purchase plan and stock option plans.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Debt </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">FRT Term Loan</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On October 25, 2019, we entered into a $23.4&#160;million three-year credit facility loan agreement (the &#8220;FRT Term Loan&#8221;), to fund the acquisition of FRT GmbH, which we acquired on October 9, 2019. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The FRT Term Loan bears interest at a rate equal to the Euro Interbank Offered Rate (&#8220;EURIBOR&#8221;) plus 1.75% per annum and will be repaid in quarterly installments of approximately $2.0&#160;million plus interest. The interest rate at March&#160;27, 2021 was 1.21%. As of March&#160;27, 2021, the balance outstanding pursuant to the FRT term loan was $14.4 million.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Building Term Loan</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On June 22, 2020, we entered into an $18.0&#160;million 15-year credit facility loan agreement (the &#8220;Building Term Loan&#8221;). The proceeds of the Building Term Loan were used to finance the purchase a building adjacent to our leased facilities in Livermore, California. </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">31</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Building Term Loan bears interest at a rate equal to the applicable LIBOR rate plus 1.75% per annum. Interest payments are payable in monthly installments over a fifteen-year period. The interest rate at March&#160;27, 2021 was 1.87%. As of March&#160;27, 2021, the balance outstanding pursuant to the Building Term Loan was $17.3 million.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On March 17, 2020, we entered into a forward starting interest rate swap agreement to hedge the interest payments on the Building Term Loan for the notional amount of $18.0&#160;million, and an amortization period that matches the debt. As future levels of LIBOR over the life of the loan are uncertain, we entered into this interest-rate swap agreement to hedge the exposure in interest rate risks associated with movement in LIBOR rates. By entering into the agreement, we convert a floating rate interest at one-month LIBOR plus 1.75% into a fixed rate interest at 2.75%. The interest rate swap also includes a 0% floor that is effective for one year from the date of the swap. As of March&#160;27, 2021, the notional amount of the loan that is subject to this interest rate swap is $17.3 million. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Stock Repurchase Program</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In October 2020, our Board of Directors authorized a program to repurchase up to $50.0 million of outstanding common stock to offset potential dilution from issuances of common stock under our stock-based compensation plans. The share repurchase program will expire on October 28, 2022. During the three months ended March&#160;27, 2021, we repurchased 136,402 shares of common stock for $5.7 million and, as of March&#160;27, 2021, $44.3 million remained available for future repurchases.</span></div><div style="text-align:justify"><span><br/></span></div><div id="i9c89e3d57c9546d7826f58de281429d9_100"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Contractual Obligations and Commitments</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes our significant contractual commitments to make future payments in cash under contractual obligations as of March&#160;27, 2021:</span></div><div style="text-align:justify"><span><br/></span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.607%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="39" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Payments Due In Fiscal Year</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Remainder 2020</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Thereafter</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating leases</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,747&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,040&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,710&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,297&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,814&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">14,416&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">50,024&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Term loans - principal payments</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,949&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,276&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,050&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,080&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,111&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,258&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">31,724&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Term loans - interest payments </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">360&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">373&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">290&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">271&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">248&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,185&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,727&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">14,056&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17,689&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,050&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,648&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,173&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,859&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">84,475&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(1) </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Represents our minimum interest payment commitments at 1.87% per annum for the Building Term Loan and 1.21% per annum for the FRT Term Loan. This also excludes any amounts related to our interest rate swap.</span></div><div style="text-align:justify"><span><br/></span></div><div id="i9c89e3d57c9546d7826f58de281429d9_103"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Off-Balance Sheet Arrangements</span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Historically, we have not participated in transactions that have generated relationships with unconsolidated entities or financial partnerships, such as entities often referred to as structured finance or special purpose entities, which would have been established for the purpose of facilitating off-balance sheet arrangements or other contractually narrow or limited purposes. As of March&#160;27, 2021, we were not involved in any such off-balance sheet arrangements.</span></div><div style="text-align:justify"><span><br/></span></div><div id="i9c89e3d57c9546d7826f58de281429d9_106"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Recent Accounting Pronouncements</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See Note 1, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Basis of Presentation and New Accounting Pronouncements</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, of Notes to Condensed Consolidated Financial Statements.</span></div><div><span><br/></span></div><div id="i9c89e3d57c9546d7826f58de281429d9_109"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 3. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Quantitative and Qualitative Disclosures about Market Risk</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For financial market risks related to changes in interest rates and foreign currency exchange rates, reference is made to Item 7A &#8220;Quantitative and Qualitative Disclosures about Market Risk&#8221; contained in Part&#160;II of our Annual Report on Form&#160;10-K for the fiscal year ended December&#160;26, 2020. Our exposure to market risk has not changed materially since December&#160;26, 2020. </span></div><div style="text-align:justify"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">32</span></div></div></div><div id="i9c89e3d57c9546d7826f58de281429d9_112"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 4. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Controls and Procedures</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Evaluation of Disclosure Controls and Procedures</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Based on our management&#8217;s evaluation (with the participation of our principal executive officer and principal financial officer), as of the end of the period covered by this report, our principal executive officer and principal financial officer have concluded that our disclosure controls and procedures (as defined in Rules&#160;13a-15(e)&#160;and 15d-15(e)&#160;under the Securities Exchange Act of 1934, as amended, (the &#8220;Exchange Act&#8221;)) are effective to ensure that information required to be disclosed by us in reports that we file or submit under the Exchange Act is recorded, processed, summarized and reported within the time periods specified in Securities and Exchange Commission rules&#160;and forms and is accumulated and communicated to our management, including our principal executive officer and principal financial officer, as appropriate to allow timely decisions regarding required disclosure.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Changes in Internal Control over Financial Reporting</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There have been no changes in our internal control over financial reporting (as defined in Rules 13a-15(f) and 15d-15(f) under the Exchange Act) except as described below that occurred during the period covered by this Quarterly Report on Form 10-Q that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We implemented an enterprise resource planning (&#8220;ERP&#8221;) system in January 2021 that supports our operations and financial reporting for two of our factories located in Beaverton, Oregon and Theindorf, Germany, in a next step to unify our worldwide ERP system. This significantly impacted our business and financial transaction and reporting processes for these locations. We are taking steps to monitor and maintain appropriate internal control over financial reporting and will continue to evaluate these controls for effectiveness.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Limitations on the Effectiveness of Controls</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Control systems, no matter how well designed and operated, can provide only reasonable, not absolute, assurance that the control systems&#8217; objectives are being met. Further, the design of any control systems must reflect the fact that there are resource constraints, and the benefits of all controls must be considered relative to their costs. Because of the inherent limitations in all control systems, no evaluation of controls can provide absolute assurance that all control issues and instances of fraud, if any, within our company have been detected. These inherent limitations include the realities that judgments in decision making can be faulty and that breakdowns can occur because of a simple error or mistake. Control systems can also be circumvented by the individual acts of some persons, by collusion of two or more people, or by management override of the controls. The design of any system of controls is based, in part, on certain assumptions about the likelihood of future events, and there can be no assurance that any design will succeed in achieving its stated goals under all potential future conditions. Over time, controls may become inadequate because of changes in conditions or deterioration in the degree of compliance with policies or procedures.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CEO and CFO Certifications</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have attached as exhibits to this Quarterly Report on Form&#160;10-Q the certifications of our Chief Executive Officer and Chief Financial Officer, which are required in accordance with the Exchange Act. We recommend that this Item 4 be read in conjunction with the certifications for a more complete understanding of the subject matter presented.&#160;</span></div><div style="text-align:justify"><span><br/></span></div><div id="i9c89e3d57c9546d7826f58de281429d9_115"></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PART&#160;II - OTHER INFORMATION</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div id="i9c89e3d57c9546d7826f58de281429d9_118"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 1A. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Risk Factors</span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There have been no material changes during the three months ended March&#160;27, 2021 to the risk factors discussed in our Annual Report on Form&#160;10-K for the year ended December&#160;26, 2020. If any of the identified risks actually occur, our business, financial condition and results of operations could suffer. The trading price of our common stock could decline and you may lose all or part of your investment in our common stock. The risks and uncertainties described in our Annual Report on Form&#160;10-K for the year ended December&#160;26, 2020 are not the only ones we face. Additional risks that we currently do not know about or that we currently believe to be immaterial may also impair our business operations.</span></div><div><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">33</span></div></div></div><div id="i9c89e3d57c9546d7826f58de281429d9_1173"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 2.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"> Unregistered Sales of Equity Securities and Use of Proceeds</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Repurchase of Common Stock</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes our repurchases of outstanding common stock for the three months ended March&#160;27, 2021:</span></div><div><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:41.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.496%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.496%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.496%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.502%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Period (fiscal months)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Total Number of Shares Purchased</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Average Price Paid per Share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Total Number of Shares Purchased as Part of Publicly Announced Plans or Programs</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:700;line-height:100%;position:relative;top:-2.8pt;vertical-align:baseline">(1)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Maximum Amount that May Yet Be Purchased Under the Plans or Programs</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 27, 2020 - January 23, 2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">50,000,000&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">January 24, 2021 - February 20, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">50,000,000&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">February 21, 2021 - March 27, 2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136,402&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42.07&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136,402&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44,261,568&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136,402&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42.07&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136,402&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:120%;position:relative;top:-3.15pt;vertical-align:baseline">1</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"> In October 2020, our Board of Directors authorized a program to repurchase up to $50.0 million of outstanding common stock to offset potential dilution from issuances of our common stock under our employee stock purchase plan and equity incentive plan. Under the authorized stock repurchase program, we may repurchase shares from time to time on the open market. The pace of repurchase activity will depend on levels of cash generation, current stock price and other factors. The program may be modified or discontinued at any time. The share repurchase program will expire on October 28, 2022.</span></div><div><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">34</span></div></div></div><div id="i9c89e3d57c9546d7826f58de281429d9_121"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="-sec-extract:summary"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 6. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Exhibits </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following exhibits are filed herewith and this list constitutes the exhibit index.</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:8.856%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:50.290%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.684%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.416%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.952%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.542%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Exhibit</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Incorporated&#160;by&#160;Reference</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Filed</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Number</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Exhibit&#160;Description</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Form</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Date</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Number</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Herewith</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.1</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/1039399/000089161803005288/f93550orexv3w01.txt">Amended and Restated Certificate of Incorporation of the Registrant as filed with the Delaware Secretary of State on June 17, 2003</a></span></div><div><span><br/></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">S-1</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 20, 2003</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.01</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.2</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/1039399/000119312516655202/d216134dex32.htm">Amended and Restated Bylaws of the Registrant</a></span></div><div><span><br/></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8-K</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">July 22, 2016</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.2</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31.01</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="formq121exh3101.htm">Certification of Chief Executive Officer pursuant to 15 U.S.C. Section&#160;7241, as adopted pursuant to Section&#160;302 of the Sarbanes-Oxley Act of 2002</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">X</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31.02</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="formq121exh3102.htm">Certification of Chief Financial Officer pursuant to 15 U.S.C. Section&#160;7241, as adopted pursuant to Section&#160;302 of the Sarbanes-Oxley Act of 2002</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">X</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32.01</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="formq121exh3201.htm">Certification of Chief Executive Officer and Chief Financial Officer pursuant to 18 U.S.C. Section&#160;1350, as adopted pursuant to Section&#160;906 of the Sarbanes-Oxley Act of 2002</a></span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The following financial statements from the Company&#8217;s Quarterly Report on Form 10-Q for the quarter ended March&#160;27, 2021, formatted in Inline XBRL: (i) Condensed Consolidated Balance Sheets, (ii) Condensed Consolidated Statements of Income, (iii) Condensed Consolidated Statements of Comprehensive Income, (iv) Condensed Consolidated Statements of Stockholders&#8217; Equity, (v) Condensed Consolidated Statements of Cash Flows, and (vi) Notes to Condensed Consolidated Financial Statements, tagged as blocks of text and including detailed tags</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">X</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101.INS</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">XBRL Instance Document</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">X</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101.SCH</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">XBRL Taxonomy Extension Schema Document</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">X</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101.CAL</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">XBRL Taxonomy Extension Calculation Linkbase Document</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">X</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101.DEF</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">XBRL Taxonomy Extension Definition Linkbase Document</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">X</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101.LAB</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">XBRL Taxonomy Extension Label Linkbase Document</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">X</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101.PRE</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">XBRL Taxonomy Extension Presentation Linkbase Document</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">X</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">104</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">The cover page from the Company&#8217;s Quarterly Report on Form 10-Q for the quarter ended March&#160;27, 2021, formatted in Inline XBRL (included as Exhibit 101)</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">X</span></td></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;______________________________________</span></div><div style="padding-left:9pt;text-align:justify;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">*&#160;&#160;&#160;&#160;This exhibit shall not be deemed &#8220;filed&#8221; for purposes of Section&#160;18 of the Securities Exchange Act of 1934 or otherwise subject to the liabilities of that section, nor shall it be deemed incorporated by reference in any filing under the Securities Act of 1933 or the Securities Exchange Act of 1934, whether made before or after the date hereof and irrespective of any general incorporation language in any filings.</span></div><div style="padding-left:9pt;text-align:justify;text-indent:-9pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="-sec-extract:summary;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">35</span></div></div></div><div id="i9c89e3d57c9546d7826f58de281429d9_124"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">SIGNATURE</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Pursuant to the requirements of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned thereunto duly authorized.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:79.239%"><tr><td style="width:1.0%"></td><td style="width:16.058%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:21.040%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:4.988%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:53.514%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">FormFactor,&#160;Inc.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 4, 2021</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ SHAI SHAHAR</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Shai Shahar</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Chief Financial Officer</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-style:italic;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:1pt;font-style:italic;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">(Duly Authorized Officer, Principal Financial Officer, and Principal Accounting Officer)</span></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">36</span></div></div></div></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.01
<SEQUENCE>2
<FILENAME>formq121exh3101.htm
<DESCRIPTION>EX-31.01
<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 -->
<!-- Copyright 2021 Workiva -->
<title>Document</title></head><body><div id="i7e8924128eaf467cade3136e75ab012c_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Exhibit 31.01</font></div><div style="text-align:right"><font><br></font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CERTIFICATION OF CHIEF EXECUTIVE OFFICER</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PURSUANT TO 15 U.S.C. SECTION&#160;7241, AS</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ADOPTED PURSUANT TO SECTION&#160;302 OF THE SARBANES-OXLEY ACT OF 2002</font></div><div><font><br></font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, Michael D. Slessor, certify that&#58;</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">I have reviewed the quarterly report on Form&#160;10-Q of FormFactor,&#160;Inc.&#59;</font></div><div style="padding-left:18pt;text-indent:-18pt"><font><br></font></div><div style="padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">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&#59;</font></div><div style="padding-left:18pt;text-indent:-18pt"><font><br></font></div><div style="padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">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&#59;</font></div><div style="padding-left:18pt;text-indent:-18pt"><font><br></font></div><div style="padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">The registrant&#8217;s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules&#160;13a-15(e)&#160;and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules&#160;13a-15(f)&#160;and 15d-15(f)) for the registrant and have&#58;</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:11.07pt">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&#59;</font></div><div style="padding-left:36pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">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&#59;</font></div><div style="padding-left:36pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">c.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:11.07pt">Evaluated the effectiveness of the registrant&#8217;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation&#59; and</font></div><div style="padding-left:36pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">d.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">Disclosed in the quarterly report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting.</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5.&#160;&#160;&#160;&#160;The registrant&#8217;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent functions)&#58;</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:11.07pt">All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant&#8217;s ability to record, process, summarize and report financial information&#59; and</font></div><div style="padding-left:36pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.</font></div><div><font><br></font></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:84.064%"><tr><td style="width:1.0%"></td><td style="width:7.073%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:26.726%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:62.901%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 4, 2021</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; MICHAEL D. SLESSOR</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Michael D.&#160;Slessor</font></div><div style="margin-bottom:1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Chief Executive Officer</font></div><div style="margin-bottom:1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">(Principal Executive Officer and Director)</font></div></td></tr></table></div><div><font><br></font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.02
<SEQUENCE>3
<FILENAME>formq121exh3102.htm
<DESCRIPTION>EX-31.02
<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 -->
<!-- Copyright 2021 Workiva -->
<title>Document</title></head><body><div id="icd534e3adad54217842285eaad21e51c_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Exhibit 31.02</font></div><div style="text-align:center"><font><br></font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CERTIFICATION OF CHIEF FINANCIAL OFFICER</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PURSUANT TO 15 U.S.C. SECTION&#160;7241,</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">AS ADOPTED PURSUANT TO SECTION&#160;302 OF THE SARBANES-OXLEY ACT OF 2002</font></div><div style="text-align:right"><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, Shai Shahar, certify that&#58;</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">I have reviewed the quarterly report on Form&#160;10-Q of FormFactor,&#160;Inc.&#59;</font></div><div><font><br></font></div><div style="padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">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&#59;</font></div><div><font><br></font></div><div style="padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">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&#59;</font></div><div><font><br></font></div><div style="padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">The registrant&#8217;s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules&#160;13a-15(e)&#160;and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules&#160;13a-15(f)&#160;and 15d-15(f)) for the registrant and have&#58;</font></div><div style="padding-left:18pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:11.07pt">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&#59;</font></div><div><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">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&#59;</font></div><div style="padding-left:36pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">c.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:11.07pt">Evaluated the effectiveness of the registrant&#8217;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation&#59; and</font></div><div style="padding-left:36pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">d.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">Disclosed in the quarterly report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting.</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:18pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5.&#160;&#160;&#160;&#160;The registrant&#8217;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent functions)&#58;</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:11.07pt">All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant&#8217;s ability to record, process, summarize and report financial information&#59; and</font></div><div style="padding-left:36pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.</font></div><div><font><br></font></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:84.064%"><tr><td style="width:1.0%"></td><td style="width:7.073%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:26.726%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:62.901%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 4, 2021</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; SHAI SHAHAR</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Shai Shahar</font></div><div style="margin-bottom:1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Chief Financial Officer</font></div><div style="margin-bottom:1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">(Principal Financial Officer and Principal Accounting Officer)</font></div></td></tr></table></div><div><font><br></font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.01
<SEQUENCE>4
<FILENAME>formq121exh3201.htm
<DESCRIPTION>EX-32.01
<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 -->
<!-- Copyright 2021 Workiva -->
<title>Document</title></head><body><div id="if02535f5d1e9442ba6ae9523df371fe5_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Exhibit 32.01</font></div><div style="text-align:right"><font><br></font></div><div style="text-align:right"><font><br></font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CERTIFICATION OF</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CHIEF EXECUTIVE OFFICER AND CHIEF FINANCIAL OFFICER</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PURSUANT TO 18 U.S.C. SECTION&#160;1350,</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">AS ADOPTED PURSUANT TO SECTION&#160;906 OF THE SARBANES-OXLEY ACT OF 2002</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In connection with the Quarterly Report on Form&#160;10-Q of FormFactor,&#160;Inc., a Delaware corporation, for the period ended March&#160;27, 2021, as filed with the Securities and Exchange Commission, each of the undersigned officers of FormFactor,&#160;Inc. certifies pursuant to 18 U.S.C. Section&#160;1350, as adopted pursuant to Section&#160;906 of the Sarbanes-Oxley Act of 2002, that, to his respective knowledge&#58;</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">The quarterly report fully complies with the requirements of Section&#160;13(a)&#160;or 15(d)&#160;of the Securities Exchange Act of 1934, as amended&#59; and</font></div><div style="padding-left:36pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:10.5pt">The information contained in the quarterly report fairly presents, in all material respects, the financial condition and results of operations of FormFactor,&#160;Inc. for the periods presented therein.</font></div><div><font><br></font></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:84.064%"><tr><td style="width:1.0%"></td><td style="width:7.073%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:26.726%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:62.901%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 4, 2021</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; MICHAEL D. SLESSOR</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Michael D.&#160;Slessor</font></div><div style="margin-bottom:1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Chief Executive Officer</font></div><div style="margin-bottom:1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">(Principal Executive Officer and Director)</font></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 4, 2021</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; SHAI SHAHAR</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Shai Shahar</font></div><div style="margin-bottom:1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Chief Financial Officer</font></div><div style="margin-bottom:1pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">(Principal Financial Officer and Principal Accounting Officer)</font></div></td></tr></table></div><div><font><br></font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>5
<FILENAME>form-20210327.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2021 Workiva-->
<!--r:55eb200e-7c73-4bb5-9f15-e61280b04aa0,g:704d941e-e4b3-4657-882c-0679fd4e906c-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:form="http://www.formfactor.com/20210327" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:num="http://www.xbrl.org/dtr/type/numeric" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.formfactor.com/20210327">
  <xs:import namespace="http://fasb.org/srt/2020-01-31" schemaLocation="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd"/>
  <xs:import namespace="http://fasb.org/us-gaap/2020-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd"/>
  <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="http://www.xbrl.org/2003/xlink-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/dtr/type/non-numeric" schemaLocation="http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd"/>
  <xs:import namespace="http://www.xbrl.org/dtr/type/numeric" schemaLocation="http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/country/2020-01-31" schemaLocation="https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/currency/2020-01-31" schemaLocation="https://xbrl.sec.gov/currency/2020/currency-2020-01-31.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/dei/2020-01-31" schemaLocation="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd"/>
  <xs:annotation>
    <xs:appinfo>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="form-20210327_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="form-20210327_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="form-20210327_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="form-20210327_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple"/>
      <link:roleType id="CoverPage" roleURI="http://www.formfactor.com/role/CoverPage">
        <link:definition>0001001 - Document - Cover Page</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="CondensedConsolidatedBalanceSheets" roleURI="http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets">
        <link:definition>1001002 - Statement - Condensed 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="CondensedConsolidatedBalanceSheetsParenthetical" roleURI="http://www.formfactor.com/role/CondensedConsolidatedBalanceSheetsParenthetical">
        <link:definition>1002003 - Statement - Condensed 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="CondensedConsolidatedStatementsofIncome" roleURI="http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome">
        <link:definition>1003004 - Statement - Condensed 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="CondensedConsolidatedStatementsofComprehensiveIncome" roleURI="http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome">
        <link:definition>1004005 - Statement - Condensed Consolidated Statements of Comprehensive Income</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CondensedConsolidatedStatementsofStockholdersEquity" roleURI="http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity">
        <link:definition>1005006 - Statement - Condensed 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="CondensedConsolidatedStatementsofCashFlows" roleURI="http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows">
        <link:definition>1006007 - Statement - Condensed 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="BasisofPresentationandNewAccountingPronouncements" roleURI="http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncements">
        <link:definition>2101101 - Disclosure - Basis of Presentation and New Accounting Pronouncements</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BasisofPresentationandNewAccountingPronouncementsPolicies" roleURI="http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncementsPolicies">
        <link:definition>2202201 - Disclosure - Basis of Presentation and New Accounting Pronouncements (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="ConcentrationofCreditandOtherRisks" roleURI="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisks">
        <link:definition>2103102 - Disclosure - Concentration of Credit and Other Risks</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="ConcentrationofCreditandOtherRisksTables" roleURI="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksTables">
        <link:definition>2304301 - Disclosure - Concentration of Credit and Other Risks (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="ConcentrationofCreditandOtherRisksDetails" roleURI="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails">
        <link:definition>2405401 - Disclosure - Concentration of Credit and Other Risks (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="Inventoriesnet" roleURI="http://www.formfactor.com/role/Inventoriesnet">
        <link:definition>2106103 - Disclosure - Inventories, net</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="InventoriesnetTables" roleURI="http://www.formfactor.com/role/InventoriesnetTables">
        <link:definition>2307302 - Disclosure - Inventories, net (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="InventoriesnetDetails" roleURI="http://www.formfactor.com/role/InventoriesnetDetails">
        <link:definition>2408402 - Disclosure - Inventories, net (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="Acquisition" roleURI="http://www.formfactor.com/role/Acquisition">
        <link:definition>2109104 - Disclosure - Acquisition</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="AcquisitionTables" roleURI="http://www.formfactor.com/role/AcquisitionTables">
        <link:definition>2310303 - Disclosure - Acquisition (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="AcquisitionAdditionalInformationDetails" roleURI="http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails">
        <link:definition>2411403 - Disclosure - Acquisition - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails" roleURI="http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails">
        <link:definition>2412404 - Disclosure - Acquisition - Assets Acquired and Liabilities Assumed (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="AcquisitionIntangibleAssetsAcquiredDetails" roleURI="http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails">
        <link:definition>2413405 - Disclosure - Acquisition - Intangible Assets Acquired (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="GoodwillandIntangibleAssets" roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssets">
        <link:definition>2114105 - Disclosure - Goodwill and 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="GoodwillandIntangibleAssetsTables" roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsTables">
        <link:definition>2315304 - Disclosure - Goodwill and 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="GoodwillandIntangibleAssetsGoodwillDetails" roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails">
        <link:definition>2416406 - Disclosure - Goodwill and 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="GoodwillandIntangibleAssetsAdditionalinformationDetails" roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsAdditionalinformationDetails">
        <link:definition>2417407 - Disclosure - Goodwill and Intangible Assets - Additional information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillandIntangibleAssetsIntangibleAssetsDetails" roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails">
        <link:definition>2418408 - Disclosure - Goodwill and 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="GoodwillandIntangibleAssetsAmortizationExpenseDetails" roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails">
        <link:definition>2419409 - Disclosure - Goodwill and Intangible Assets - 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="AccruedLiabilities" roleURI="http://www.formfactor.com/role/AccruedLiabilities">
        <link:definition>2120106 - Disclosure - Accrued Liabilities</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="AccruedLiabilitiesTables" roleURI="http://www.formfactor.com/role/AccruedLiabilitiesTables">
        <link:definition>2321305 - Disclosure - Accrued Liabilities (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="AccruedLiabilitiesDetails" roleURI="http://www.formfactor.com/role/AccruedLiabilitiesDetails">
        <link:definition>2422410 - Disclosure - Accrued Liabilities (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="FairValueandDerivativeInstruments" roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstruments">
        <link:definition>2123107 - Disclosure - Fair Value and Derivative Instruments</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueandDerivativeInstrumentsTables" roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsTables">
        <link:definition>2324306 - Disclosure - Fair Value and Derivative Instruments (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails" roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails">
        <link:definition>2425411 - Disclosure - Fair Value and Derivative Instruments - Fair Value Assets Measured on Recurring Basis (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="FairValueandDerivativeInstrumentsAdditionalInformationDetails" roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAdditionalInformationDetails">
        <link:definition>2426412 - Disclosure - Fair Value and Derivative Instruments - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails" roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails">
        <link:definition>2427413 - Disclosure - Fair Value and Derivative Instruments - Impact of Cash Flow Hedges and 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="FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails" roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails">
        <link:definition>2428414 - Disclosure - Fair Value and Derivative Instruments - Foreign Currency Forward Contracts (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="FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails" roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails">
        <link:definition>2429415 - Disclosure - Fair Value and Derivative Instruments - Gains and Losses Related to Non-designated Derivative Instruments (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="FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails" roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails">
        <link:definition>2430416 - Disclosure - Fair Value and Derivative Instruments - Impact of Foreign Exchange Derivattive Contracts Designated as Cash Flow Hedges (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="FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails" roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails">
        <link:definition>2431417 - Disclosure - Fair Value and Derivative Instruments - Assets Measured at Fair Value on a Non-Recurring Basis (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="Warranty" roleURI="http://www.formfactor.com/role/Warranty">
        <link:definition>2132108 - Disclosure - Warranty</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="WarrantyTables" roleURI="http://www.formfactor.com/role/WarrantyTables">
        <link:definition>2333307 - Disclosure - Warranty (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="WarrantyDetails" roleURI="http://www.formfactor.com/role/WarrantyDetails">
        <link:definition>2434418 - Disclosure - Warranty (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="PropertyPlantandEquipmentnet" roleURI="http://www.formfactor.com/role/PropertyPlantandEquipmentnet">
        <link:definition>2135109 - Disclosure - Property, Plant, and Equipment, net</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="PropertyPlantandEquipmentnetTables" roleURI="http://www.formfactor.com/role/PropertyPlantandEquipmentnetTables">
        <link:definition>2336308 - Disclosure - Property, Plant, and Equipment, net (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="PropertyPlantandEquipmentnetDetails" roleURI="http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails">
        <link:definition>2437419 - Disclosure - Property, Plant, and Equipment, net (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="StockholdersEquityandStockBasedCompensation" roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensation">
        <link:definition>2138110 - Disclosure - Stockholders&#8217; Equity and 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="StockholdersEquityandStockBasedCompensationTables" roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationTables">
        <link:definition>2339309 - Disclosure - Stockholders&#8217; Equity and 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="StockholdersEquityandStockBasedCompensationAdditionalInformationDetails" roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails">
        <link:definition>2440420 - Disclosure - Stockholders&#8217; Equity and Stock-Based Compensation - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails" roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails">
        <link:definition>2441421 - Disclosure - Stockholders&#8217; Equity and Stock-Based Compensation - Restricted Stock Unit 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="StockholdersEquityandStockBasedCompensationStockOptionActivityDetails" roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails">
        <link:definition>2442422 - Disclosure - Stockholders&#8217; Equity and Stock-Based Compensation - Stock Option 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="StockholdersEquityandStockBasedCompensationESPPActivityDetails" roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationESPPActivityDetails">
        <link:definition>2443423 - Disclosure - Stockholders&#8217; Equity and Stock-Based Compensation - ESPP 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="StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails" roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails">
        <link:definition>2444424 - Disclosure - Stockholders&#8217; Equity and Stock-Based Compensation - Stock-Based Compensation (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="StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails" roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails">
        <link:definition>2445425 - Disclosure - Stockholders&#8217; Equity and Stock-Based Compensation - Unrecognized Compensation Costs (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="NetIncomeperShare" roleURI="http://www.formfactor.com/role/NetIncomeperShare">
        <link:definition>2146111 - Disclosure - Net Income per Share</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="NetIncomeperShareTables" roleURI="http://www.formfactor.com/role/NetIncomeperShareTables">
        <link:definition>2347310 - Disclosure - Net Income per Share (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="NetIncomeperShareDetails" roleURI="http://www.formfactor.com/role/NetIncomeperShareDetails">
        <link:definition>2448426 - 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="CommitmentsandContingencies" roleURI="http://www.formfactor.com/role/CommitmentsandContingencies">
        <link:definition>2149112 - 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="Leases" roleURI="http://www.formfactor.com/role/Leases">
        <link:definition>2150113 - Disclosure - Leases</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.formfactor.com/role/LeasesTables">
        <link:definition>2351311 - 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="LeasesNarrativeDetails" roleURI="http://www.formfactor.com/role/LeasesNarrativeDetails">
        <link:definition>2452427 - Disclosure - Leases - 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="LeasesComponentsofLeaseExpenseDetails" roleURI="http://www.formfactor.com/role/LeasesComponentsofLeaseExpenseDetails">
        <link:definition>2453428 - Disclosure - Leases - Components of Lease 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="LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails" roleURI="http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails">
        <link:definition>2454429 - Disclosure - Leases - Schedule of Future Minimum Payments Under 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="LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails_1" roleURI="http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails_1">
        <link:definition>2454429 - Disclosure - Leases - Schedule of Future Minimum Payments Under 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="Revenue" roleURI="http://www.formfactor.com/role/Revenue">
        <link:definition>2155114 - Disclosure - Revenue</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="RevenueAdditionalInformationDetails" roleURI="http://www.formfactor.com/role/RevenueAdditionalInformationDetails">
        <link:definition>2456430 - Disclosure - Revenue - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueRemainingPerformanceObligationDetails" roleURI="http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails">
        <link:definition>2457431 - Disclosure - Revenue - Remaining Performance Obligation (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="RevenueRemainingPerformanceObligationDetails_1" roleURI="http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails_1">
        <link:definition>2457431 - Disclosure - Revenue - Remaining Performance Obligation (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="OperatingSegmentsandEnterpriseWideInformation" roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformation">
        <link:definition>2158115 - Disclosure - Operating Segments and Enterprise-Wide 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="OperatingSegmentsandEnterpriseWideInformationTables" roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationTables">
        <link:definition>2359312 - Disclosure - Operating Segments and Enterprise-Wide Information (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="OperatingSegmentsandEnterpriseWideInformationAdditionalInformationDetails" roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationAdditionalInformationDetails">
        <link:definition>2460432 - Disclosure - Operating Segments and Enterprise-Wide Information - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails" roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails">
        <link:definition>2461433 - Disclosure - Operating Segments and Enterprise-Wide Information - Operating Results by Segment (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="OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails" roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails">
        <link:definition>2462434 - Disclosure - Operating Segments and Enterprise-Wide Information - Revenue by Segment, Recognition Type, and Geographic Area (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
    </xs:appinfo>
  </xs:annotation>
  <xs:element id="form_ProbeCardsSegmentMember" abstract="true" name="ProbeCardsSegmentMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="form_MajorCustomer2Member" abstract="true" name="MajorCustomer2Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="form_SystemsProductGroupMember" abstract="true" name="SystemsProductGroupMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="form_PerformanceRestrictedStockUnitsMember" abstract="true" name="PerformanceRestrictedStockUnitsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="form_FlashProductGroupMember" abstract="true" name="FlashProductGroupMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="form_GrossMarginPercent" abstract="false" name="GrossMarginPercent" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="num:percentItemType"/>
  <xs:element id="form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal" abstract="false" name="FiniteLivedIntangibleAssetsAmortizationExpenseTotal" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="form_FoundryLogicProductGroupMember" abstract="true" name="FoundryLogicProductGroupMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour" abstract="false" name="LesseeOperatingLeaseLiabilityToBePaidAfterYearFour" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="form_FRTGmbHMember" abstract="true" name="FRTGmbHMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" abstract="false" name="FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="form_ChangeInCapitalExpendituresIncurredButNotYetPaid" abstract="false" name="ChangeInCapitalExpendituresIncurredButNotYetPaid" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="form_SystemsSegmentMember" abstract="true" name="SystemsSegmentMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="form_HighPrecisionDevicesIncMember" abstract="true" name="HighPrecisionDevicesIncMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="form_MajorCustomer1Member" abstract="true" name="MajorCustomer1Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="form_TaiwanSemiconductorManufacturingCoLTDMember" abstract="true" name="TaiwanSemiconductorManufacturingCoLTDMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="form_RestOfTheWorldMember" abstract="true" name="RestOfTheWorldMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="form_OperatingLeaseRightOfUseAssetAmortization" abstract="false" name="OperatingLeaseRightOfUseAssetAmortization" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock" abstract="false" name="WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="num:perShareItemType"/>
  <xs:element id="form_BaldwinParkMember" abstract="true" name="BaldwinParkMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress" abstract="false" name="PropertyPlantAndEquipmentNetExcludesConstructionInProgress" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="form_ExistingDevelopedTechnologiesMember" abstract="true" name="ExistingDevelopedTechnologiesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="form_FRTMember" abstract="true" name="FRTMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="form_SensorMarketsOperatingTemperature" abstract="false" name="SensorMarketsOperatingTemperature" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets" abstract="false" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="form_IntelMember" abstract="true" name="IntelMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="form_EquityIncentivePlanMember" abstract="true" name="EquityIncentivePlanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="form_DRAMProductGroupMember" abstract="true" name="DRAMProductGroupMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="form_ContingentConsiderationCalculationAmountMultipleOfEBIT" abstract="false" name="ContingentConsiderationCalculationAmountMultipleOfEBIT" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="num:percentItemType"/>
</xs:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>6
<FILENAME>form-20210327_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2021 Workiva-->
<!--r:55eb200e-7c73-4bb5-9f15-e61280b04aa0,g:704d941e-e4b3-4657-882c-0679fd4e906c-->
<link:linkbase 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" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.formfactor.com/role/CoverPage" xlink:type="simple" xlink:href="form-20210327.xsd#CoverPage"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/CoverPage" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets" xlink:type="simple" xlink:href="form-20210327.xsd#CondensedConsolidatedBalanceSheets"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_86f8650f-9157-4a5c-b709-6ecdb7c8855b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Assets"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_4a2b65f0-f8a9-44c1-adb3-3e8210b3aa71" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_86f8650f-9157-4a5c-b709-6ecdb7c8855b" xlink:to="loc_us-gaap_AssetsCurrent_4a2b65f0-f8a9-44c1-adb3-3e8210b3aa71" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsNoncurrent_ef14eebb-0a30-4b63-9fc3-89e5aa7659a6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_86f8650f-9157-4a5c-b709-6ecdb7c8855b" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsNoncurrent_ef14eebb-0a30-4b63-9fc3-89e5aa7659a6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_95146437-7461-4197-b6b1-56ae0bf43051" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_86f8650f-9157-4a5c-b709-6ecdb7c8855b" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_95146437-7461-4197-b6b1-56ae0bf43051" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_6554351a-21e1-4411-8351-9123379bd4b5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_86f8650f-9157-4a5c-b709-6ecdb7c8855b" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_6554351a-21e1-4411-8351-9123379bd4b5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_e74716f8-36f5-4eeb-9608-7221172cd710" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Goodwill"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_86f8650f-9157-4a5c-b709-6ecdb7c8855b" xlink:to="loc_us-gaap_Goodwill_e74716f8-36f5-4eeb-9608-7221172cd710" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_f8e895b3-faec-40a9-894d-e9219d9fa5f0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_86f8650f-9157-4a5c-b709-6ecdb7c8855b" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_f8e895b3-faec-40a9-894d-e9219d9fa5f0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_f0e01d6b-9859-486c-8f0b-fd45cf455e92" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_86f8650f-9157-4a5c-b709-6ecdb7c8855b" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_f0e01d6b-9859-486c-8f0b-fd45cf455e92" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_17469bb7-777d-4f56-b214-36d3adbfc1f8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_86f8650f-9157-4a5c-b709-6ecdb7c8855b" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet_17469bb7-777d-4f56-b214-36d3adbfc1f8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_a2ecdb1f-eee3-4472-8159-7cb1a3d9cb09" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_9514d076-b890-4fc6-893f-f0288e32a7aa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_a2ecdb1f-eee3-4472-8159-7cb1a3d9cb09" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_9514d076-b890-4fc6-893f-f0288e32a7aa" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_5e899b70-2f24-437c-947d-f637b302c051" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_a2ecdb1f-eee3-4472-8159-7cb1a3d9cb09" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_5e899b70-2f24-437c-947d-f637b302c051" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_61d96d79-0d85-409b-a2a9-3dea8f7ad25d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryNet"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_a2ecdb1f-eee3-4472-8159-7cb1a3d9cb09" xlink:to="loc_us-gaap_InventoryNet_61d96d79-0d85-409b-a2a9-3dea8f7ad25d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_bbc15a73-32a2-4636-8cc1-861e83a02cf0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_a2ecdb1f-eee3-4472-8159-7cb1a3d9cb09" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_bbc15a73-32a2-4636-8cc1-861e83a02cf0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_fdfd2e7b-5b0c-4789-9750-de8de1770ace" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_a2ecdb1f-eee3-4472-8159-7cb1a3d9cb09" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_fdfd2e7b-5b0c-4789-9750-de8de1770ace" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MarketableSecuritiesCurrent_a1d440e6-ef6c-4894-9ebe-4bf7c1093c3f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MarketableSecuritiesCurrent"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_a2ecdb1f-eee3-4472-8159-7cb1a3d9cb09" xlink:to="loc_us-gaap_MarketableSecuritiesCurrent_a1d440e6-ef6c-4894-9ebe-4bf7c1093c3f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_dd88fb90-6de3-44f8-a33c-bb1450f54298" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_0774e582-5055-4a97-bad8-725f5a3b0e07" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Liabilities"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_dd88fb90-6de3-44f8-a33c-bb1450f54298" xlink:to="loc_us-gaap_Liabilities_0774e582-5055-4a97-bad8-725f5a3b0e07" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_0b159305-1a2a-40dd-8b2d-917acbe085a3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_dd88fb90-6de3-44f8-a33c-bb1450f54298" xlink:to="loc_us-gaap_StockholdersEquity_0b159305-1a2a-40dd-8b2d-917acbe085a3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_cf4648e0-e6b9-4979-9f7a-9281811624c6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent_9fd9cb42-3a8a-4526-ad4f-93cfe49e8e9c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_cf4648e0-e6b9-4979-9f7a-9281811624c6" xlink:to="loc_us-gaap_AccountsPayableCurrent_9fd9cb42-3a8a-4526-ad4f-93cfe49e8e9c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_f848314b-68cd-44e2-b219-7ffbf672e2b0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_cf4648e0-e6b9-4979-9f7a-9281811624c6" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_f848314b-68cd-44e2-b219-7ffbf672e2b0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredRevenueCurrent_95e5c189-b9a3-4157-9640-a1639cec87a1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredRevenueCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_cf4648e0-e6b9-4979-9f7a-9281811624c6" xlink:to="loc_us-gaap_DeferredRevenueCurrent_95e5c189-b9a3-4157-9640-a1639cec87a1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtCurrent_3929a7b5-cfe4-48b5-856f-5633b65b31e3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermDebtCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_cf4648e0-e6b9-4979-9f7a-9281811624c6" xlink:to="loc_us-gaap_LongTermDebtCurrent_3929a7b5-cfe4-48b5-856f-5633b65b31e3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_2e50f6fa-b2f6-4d75-9749-40b65925090e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_cf4648e0-e6b9-4979-9f7a-9281811624c6" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_2e50f6fa-b2f6-4d75-9749-40b65925090e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_ca15e0ac-ad0a-4d1e-b096-4604dc4100c5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_2bd1fc8b-3431-4275-8ff6-32849e7c8d87" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_ca15e0ac-ad0a-4d1e-b096-4604dc4100c5" xlink:to="loc_us-gaap_CommonStockValue_2bd1fc8b-3431-4275-8ff6-32849e7c8d87" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_c8977f54-ccb0-468e-9c0b-6783d2f42125" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_ca15e0ac-ad0a-4d1e-b096-4604dc4100c5" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_c8977f54-ccb0-468e-9c0b-6783d2f42125" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_a0848713-3b9c-4b62-afca-c8fa35e6f8e7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_ca15e0ac-ad0a-4d1e-b096-4604dc4100c5" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_a0848713-3b9c-4b62-afca-c8fa35e6f8e7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_62056c70-b470-4b6d-b9c5-1328240eba27" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_ca15e0ac-ad0a-4d1e-b096-4604dc4100c5" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_62056c70-b470-4b6d-b9c5-1328240eba27" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValue_9fd54cf1-d508-4a22-bea9-443d7780b303" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockValue"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_ca15e0ac-ad0a-4d1e-b096-4604dc4100c5" xlink:to="loc_us-gaap_TreasuryStockValue_9fd54cf1-d508-4a22-bea9-443d7780b303" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_96bfd03a-c848-4ba8-ad08-ef4ea6baa7c3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Liabilities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_12ea8070-af37-419c-ae0a-408052ace127" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_96bfd03a-c848-4ba8-ad08-ef4ea6baa7c3" xlink:to="loc_us-gaap_LiabilitiesCurrent_12ea8070-af37-419c-ae0a-408052ace127" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_d21c90e4-b77f-4705-adb2-135b1657b384" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_96bfd03a-c848-4ba8-ad08-ef4ea6baa7c3" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_d21c90e4-b77f-4705-adb2-135b1657b384" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_bec0e436-edb8-4cfe-a0ca-4d5c2cda701f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_96bfd03a-c848-4ba8-ad08-ef4ea6baa7c3" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_bec0e436-edb8-4cfe-a0ca-4d5c2cda701f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredCreditsAndOtherLiabilitiesNoncurrent_85ea00ec-55cf-4aaf-a190-24962cb3c642" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredCreditsAndOtherLiabilitiesNoncurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_96bfd03a-c848-4ba8-ad08-ef4ea6baa7c3" xlink:to="loc_us-gaap_DeferredCreditsAndOtherLiabilitiesNoncurrent_85ea00ec-55cf-4aaf-a190-24962cb3c642" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_69c0fa58-d907-44f8-becd-b91ef38b4800" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_96bfd03a-c848-4ba8-ad08-ef4ea6baa7c3" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_69c0fa58-d907-44f8-becd-b91ef38b4800" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/CondensedConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="form-20210327.xsd#CondensedConsolidatedBalanceSheetsParenthetical"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/CondensedConsolidatedBalanceSheetsParenthetical" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome" xlink:type="simple" xlink:href="form-20210327.xsd#CondensedConsolidatedStatementsofIncome"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_a408e37e-e409-49fc-b1ee-26f6d9b1a4a1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GrossProfit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_618d7445-9235-489d-9d95-277ef98a4386" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_a408e37e-e409-49fc-b1ee-26f6d9b1a4a1" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_618d7445-9235-489d-9d95-277ef98a4386" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_661e5f3b-cd52-4fa2-8bb8-f693ec41b5f7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_a408e37e-e409-49fc-b1ee-26f6d9b1a4a1" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_661e5f3b-cd52-4fa2-8bb8-f693ec41b5f7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_80658760-bddc-4895-8a12-d66089e5eea9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_64fa42ed-6cbf-4dd0-80bd-c52a4a191973" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_80658760-bddc-4895-8a12-d66089e5eea9" xlink:to="loc_us-gaap_OperatingIncomeLoss_64fa42ed-6cbf-4dd0-80bd-c52a4a191973" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentIncomeInterest_a18665e9-c6da-4bc8-9ffb-92f65d2ca241" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InvestmentIncomeInterest"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_80658760-bddc-4895-8a12-d66089e5eea9" xlink:to="loc_us-gaap_InvestmentIncomeInterest_a18665e9-c6da-4bc8-9ffb-92f65d2ca241" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_52358691-7914-4131-a6f2-50ede770730a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_80658760-bddc-4895-8a12-d66089e5eea9" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_52358691-7914-4131-a6f2-50ede770730a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense_3cbc3fba-c2ca-4cd1-a0ac-d7541aba28d9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InterestExpense"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_80658760-bddc-4895-8a12-d66089e5eea9" xlink:to="loc_us-gaap_InterestExpense_3cbc3fba-c2ca-4cd1-a0ac-d7541aba28d9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_8f169649-a9e1-4e99-b1ec-6d3ef9d9861d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_1faba4f5-fb14-4655-9955-de9888eab186" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GrossProfit"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_8f169649-a9e1-4e99-b1ec-6d3ef9d9861d" xlink:to="loc_us-gaap_GrossProfit_1faba4f5-fb14-4655-9955-de9888eab186" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpenses_8ed45032-d3b4-4175-8387-bd61027f1543" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingExpenses"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_8f169649-a9e1-4e99-b1ec-6d3ef9d9861d" xlink:to="loc_us-gaap_OperatingExpenses_8ed45032-d3b4-4175-8387-bd61027f1543" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpenses_401246db-079e-4da5-ad3b-c1d1823f904c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingExpenses"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_bb03de34-8402-432a-aa4e-3c367eb5a42a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingExpenses_401246db-079e-4da5-ad3b-c1d1823f904c" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_bb03de34-8402-432a-aa4e-3c367eb5a42a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_e998853d-04b9-41d8-96d8-5db86f492910" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingExpenses_401246db-079e-4da5-ad3b-c1d1823f904c" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_e998853d-04b9-41d8-96d8-5db86f492910" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_585b20c1-13b5-4472-9cd3-2d8da1ae8e7b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_d710cef3-2b34-4178-a67d-f8e19339f8e1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_585b20c1-13b5-4472-9cd3-2d8da1ae8e7b" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_d710cef3-2b34-4178-a67d-f8e19339f8e1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_de1e4f32-67b7-4ac7-b38a-7b34079f1a5d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_585b20c1-13b5-4472-9cd3-2d8da1ae8e7b" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_de1e4f32-67b7-4ac7-b38a-7b34079f1a5d" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome" xlink:type="simple" xlink:href="form-20210327.xsd#CondensedConsolidatedStatementsofComprehensiveIncome"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_807aab21-5aef-43ca-832f-b4e8d6eaa798" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_f9045431-e452-4ece-93ba-2da62288532a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_807aab21-5aef-43ca-832f-b4e8d6eaa798" xlink:to="loc_us-gaap_NetIncomeLoss_f9045431-e452-4ece-93ba-2da62288532a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_6ebee15e-7fbf-42d2-99fc-3f1f23d0845b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_807aab21-5aef-43ca-832f-b4e8d6eaa798" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_6ebee15e-7fbf-42d2-99fc-3f1f23d0845b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_90946c41-9a5a-4998-b35c-48101af31778" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_9b8999e1-97cc-4490-8182-6a6a759d6217" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_90946c41-9a5a-4998-b35c-48101af31778" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_9b8999e1-97cc-4490-8182-6a6a759d6217" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_03fcc7d1-6980-4ff1-98fe-27afadbbeef0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_90946c41-9a5a-4998-b35c-48101af31778" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_03fcc7d1-6980-4ff1-98fe-27afadbbeef0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_ed171e96-1410-4775-b8a8-a07b235d7d31" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_90946c41-9a5a-4998-b35c-48101af31778" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_ed171e96-1410-4775-b8a8-a07b235d7d31" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity" xlink:type="simple" xlink:href="form-20210327.xsd#CondensedConsolidatedStatementsofStockholdersEquity"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows" xlink:type="simple" xlink:href="form-20210327.xsd#CondensedConsolidatedStatementsofCashFlows"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_f8bd4f19-fab2-430e-9ebe-0c6a89787f25" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_c345d0af-892e-4235-8c5c-33f73a263a3a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_f8bd4f19-fab2-430e-9ebe-0c6a89787f25" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_c345d0af-892e-4235-8c5c-33f73a263a3a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_1ca46d75-5219-4ce8-a244-97683bdb7d93" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_f8bd4f19-fab2-430e-9ebe-0c6a89787f25" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_1ca46d75-5219-4ce8-a244-97683bdb7d93" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_4601e72d-33e2-465e-b8c8-10db5901d4ab" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_f8bd4f19-fab2-430e-9ebe-0c6a89787f25" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_4601e72d-33e2-465e-b8c8-10db5901d4ab" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_861946f7-e29a-4bde-9c69-0c8b9bbc8a6d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_f8bd4f19-fab2-430e-9ebe-0c6a89787f25" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_861946f7-e29a-4bde-9c69-0c8b9bbc8a6d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_9da21a59-8d6d-4954-9c8d-7b3141250647" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_62c233da-bbbd-4243-837e-c68f295beb3e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_9da21a59-8d6d-4954-9c8d-7b3141250647" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_62c233da-bbbd-4243-837e-c68f295beb3e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates_3f29a75e-18db-4980-8a4b-e0b3a12734eb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_9da21a59-8d6d-4954-9c8d-7b3141250647" xlink:to="loc_us-gaap_ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates_3f29a75e-18db-4980-8a4b-e0b3a12734eb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities_1242c176-f944-4490-a467-8e46d2b99362" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_9da21a59-8d6d-4954-9c8d-7b3141250647" xlink:to="loc_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities_1242c176-f944-4490-a467-8e46d2b99362" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireMarketableSecurities_dde9cdd9-eba0-4937-a3a7-6131eab728a5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquireMarketableSecurities"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_9da21a59-8d6d-4954-9c8d-7b3141250647" xlink:to="loc_us-gaap_PaymentsToAcquireMarketableSecurities_dde9cdd9-eba0-4937-a3a7-6131eab728a5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8bff7d5f-415b-4913-bcb3-0bfd5537630d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_dfd38ec9-5d6a-4788-8ce0-08133a49a254" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8bff7d5f-415b-4913-bcb3-0bfd5537630d" xlink:to="loc_us-gaap_NetIncomeLoss_dfd38ec9-5d6a-4788-8ce0-08133a49a254" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWriteDown_45248781-2a7e-4e2d-9fef-ec228112a1d5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryWriteDown"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8bff7d5f-415b-4913-bcb3-0bfd5537630d" xlink:to="loc_us-gaap_InventoryWriteDown_45248781-2a7e-4e2d-9fef-ec228112a1d5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_243d727d-8f7e-4aa9-97ad-c97f4336074b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensation"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8bff7d5f-415b-4913-bcb3-0bfd5537630d" xlink:to="loc_us-gaap_ShareBasedCompensation_243d727d-8f7e-4aa9-97ad-c97f4336074b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_752bc47a-de4d-4ad3-8e76-b39a33f6bef5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8bff7d5f-415b-4913-bcb3-0bfd5537630d" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_752bc47a-de4d-4ad3-8e76-b39a33f6bef5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_4ac40ada-4dba-42ab-8a1f-75cf61854a38" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8bff7d5f-415b-4913-bcb3-0bfd5537630d" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_4ac40ada-4dba-42ab-8a1f-75cf61854a38" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherDeferredLiability_c9e8871f-e096-48b4-9ba2-fb04045b79c4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInOtherDeferredLiability"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8bff7d5f-415b-4913-bcb3-0bfd5537630d" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherDeferredLiability_c9e8871f-e096-48b4-9ba2-fb04045b79c4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_37d4d01b-c9e7-493b-8846-0b6f4e35aade" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8bff7d5f-415b-4913-bcb3-0bfd5537630d" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_37d4d01b-c9e7-493b-8846-0b6f4e35aade" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_420e6004-c724-4515-97b0-637dcefa264f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:calculationArc order="8" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8bff7d5f-415b-4913-bcb3-0bfd5537630d" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_420e6004-c724-4515-97b0-637dcefa264f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation_6db4cb07-7d5b-43f9-9a19-e1039b87a2e5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Depreciation"/>
    <link:calculationArc order="9" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8bff7d5f-415b-4913-bcb3-0bfd5537630d" xlink:to="loc_us-gaap_Depreciation_6db4cb07-7d5b-43f9-9a19-e1039b87a2e5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization_24f46901-a413-4268-9fd2-29c175fe738a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfGoodsAndServicesSoldAmortization"/>
    <link:calculationArc order="10" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8bff7d5f-415b-4913-bcb3-0bfd5537630d" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization_24f46901-a413-4268-9fd2-29c175fe738a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherOperatingActivitiesCashFlowStatement_4d3219f2-95f6-4165-bfe8-5bbaffadd60b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherOperatingActivitiesCashFlowStatement"/>
    <link:calculationArc order="11" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8bff7d5f-415b-4913-bcb3-0bfd5537630d" xlink:to="loc_us-gaap_OtherOperatingActivitiesCashFlowStatement_4d3219f2-95f6-4165-bfe8-5bbaffadd60b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_d13b886e-7866-4768-adc3-50fd9f5535c7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue"/>
    <link:calculationArc order="12" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8bff7d5f-415b-4913-bcb3-0bfd5537630d" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_d13b886e-7866-4768-adc3-50fd9f5535c7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_b5c41d6c-e469-4432-8be7-6e619dd86ee5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:calculationArc order="13" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8bff7d5f-415b-4913-bcb3-0bfd5537630d" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_b5c41d6c-e469-4432-8be7-6e619dd86ee5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_OperatingLeaseRightOfUseAssetAmortization_e642e364-33c7-42ee-97c3-e3c05476e800" xlink:href="form-20210327.xsd#form_OperatingLeaseRightOfUseAssetAmortization"/>
    <link:calculationArc order="14" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8bff7d5f-415b-4913-bcb3-0bfd5537630d" xlink:to="loc_form_OperatingLeaseRightOfUseAssetAmortization_e642e364-33c7-42ee-97c3-e3c05476e800" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasePayments_c224b6b6-82eb-4334-9a69-2c682e756fc1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeasePayments"/>
    <link:calculationArc order="15" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8bff7d5f-415b-4913-bcb3-0bfd5537630d" xlink:to="loc_us-gaap_OperatingLeasePayments_c224b6b6-82eb-4334-9a69-2c682e756fc1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_3e803689-52d5-4470-af66-23f8f5e19b9c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets"/>
    <link:calculationArc order="16" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8bff7d5f-415b-4913-bcb3-0bfd5537630d" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_3e803689-52d5-4470-af66-23f8f5e19b9c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_2612582c-2389-4723-9889-cc6d5647be67" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashCurrent_5551538a-32ef-4e21-b79a-f542775d05f9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedCashCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_2612582c-2389-4723-9889-cc6d5647be67" xlink:to="loc_us-gaap_RestrictedCashCurrent_5551538a-32ef-4e21-b79a-f542775d05f9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashNoncurrent_de280803-f790-4aea-bbc5-1426fc64b8b3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedCashNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_2612582c-2389-4723-9889-cc6d5647be67" xlink:to="loc_us-gaap_RestrictedCashNoncurrent_de280803-f790-4aea-bbc5-1426fc64b8b3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_a12ebd8b-d170-43da-b3f9-3ed4e905d78a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_2612582c-2389-4723-9889-cc6d5647be67" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_a12ebd8b-d170-43da-b3f9-3ed4e905d78a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_e29d6f8e-45bb-4f6e-9d72-3b9dc7abe917" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLongTermDebt_65fdda05-c900-40a4-bcae-b9a8afb5222a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RepaymentsOfLongTermDebt"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_e29d6f8e-45bb-4f6e-9d72-3b9dc7abe917" xlink:to="loc_us-gaap_RepaymentsOfLongTermDebt_65fdda05-c900-40a4-bcae-b9a8afb5222a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_b63ff9d3-123e-4e0f-a163-702ff1b88112" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_e29d6f8e-45bb-4f6e-9d72-3b9dc7abe917" xlink:to="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_b63ff9d3-123e-4e0f-a163-702ff1b88112" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_e3f9f138-76f9-4af1-a3ec-2570837262c8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_e29d6f8e-45bb-4f6e-9d72-3b9dc7abe917" xlink:to="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_e3f9f138-76f9-4af1-a3ec-2570837262c8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_be05d5c8-258f-4c4b-98e2-ef7e76494072" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_e29d6f8e-45bb-4f6e-9d72-3b9dc7abe917" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_be05d5c8-258f-4c4b-98e2-ef7e76494072" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncements" xlink:type="simple" xlink:href="form-20210327.xsd#BasisofPresentationandNewAccountingPronouncements"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncements" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncementsPolicies" xlink:type="simple" xlink:href="form-20210327.xsd#BasisofPresentationandNewAccountingPronouncementsPolicies"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncementsPolicies" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisks" xlink:type="simple" xlink:href="form-20210327.xsd#ConcentrationofCreditandOtherRisks"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisks" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksTables" xlink:type="simple" xlink:href="form-20210327.xsd#ConcentrationofCreditandOtherRisksTables"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails" xlink:type="simple" xlink:href="form-20210327.xsd#ConcentrationofCreditandOtherRisksDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/Inventoriesnet" xlink:type="simple" xlink:href="form-20210327.xsd#Inventoriesnet"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/Inventoriesnet" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/InventoriesnetTables" xlink:type="simple" xlink:href="form-20210327.xsd#InventoriesnetTables"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/InventoriesnetTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/InventoriesnetDetails" xlink:type="simple" xlink:href="form-20210327.xsd#InventoriesnetDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/InventoriesnetDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_46c13072-a554-4fab-9314-dc19378a2347" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves_3ea0a38e-1b79-4769-bcd1-b4644ff763a3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_46c13072-a554-4fab-9314-dc19378a2347" xlink:to="loc_us-gaap_InventoryRawMaterialsNetOfReserves_3ea0a38e-1b79-4769-bcd1-b4644ff763a3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWorkInProcessNetOfReserves_54088f74-4700-4019-bf0e-271386b42315" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_46c13072-a554-4fab-9314-dc19378a2347" xlink:to="loc_us-gaap_InventoryWorkInProcessNetOfReserves_54088f74-4700-4019-bf0e-271386b42315" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_1ed81327-a4a7-4433-b524-f8845557c0e5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_46c13072-a554-4fab-9314-dc19378a2347" xlink:to="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_1ed81327-a4a7-4433-b524-f8845557c0e5" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/Acquisition" xlink:type="simple" xlink:href="form-20210327.xsd#Acquisition"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/Acquisition" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/AcquisitionTables" xlink:type="simple" xlink:href="form-20210327.xsd#AcquisitionTables"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/AcquisitionTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#AcquisitionAdditionalInformationDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails" xlink:type="simple" xlink:href="form-20210327.xsd#AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_68bec1d4-0768-4bab-b8da-3d18146b4430" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets_a5904cb1-aeaf-493b-8e05-84dad5a84cce" xlink:href="form-20210327.xsd#form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_68bec1d4-0768-4bab-b8da-3d18146b4430" xlink:to="loc_form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets_a5904cb1-aeaf-493b-8e05-84dad5a84cce" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_bad3565e-39f5-4bb4-a997-b3c229e869fb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_68bec1d4-0768-4bab-b8da-3d18146b4430" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_bad3565e-39f5-4bb4-a997-b3c229e869fb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets_fcac537a-3184-43be-bb0f-af5af377201e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_68bec1d4-0768-4bab-b8da-3d18146b4430" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets_fcac537a-3184-43be-bb0f-af5af377201e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_ae4a4370-db8b-4ddd-ab4b-09c130b6bf23" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_68bec1d4-0768-4bab-b8da-3d18146b4430" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_ae4a4370-db8b-4ddd-ab4b-09c130b6bf23" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_ade9089f-1302-461b-ac45-58f64b2c17a5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_68bec1d4-0768-4bab-b8da-3d18146b4430" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_ade9089f-1302-461b-ac45-58f64b2c17a5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_e37081fd-831e-4458-ae0f-315bd7f531fc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_68bec1d4-0768-4bab-b8da-3d18146b4430" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_e37081fd-831e-4458-ae0f-315bd7f531fc" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_ba79198e-f3cd-4387-bd58-0a97f304470e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_91dd8b62-3318-4ad8-9433-2baaa1775446" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_ba79198e-f3cd-4387-bd58-0a97f304470e" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_91dd8b62-3318-4ad8-9433-2baaa1775446" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_d065f412-cf36-4851-9030-ad59d19b2444" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_ba79198e-f3cd-4387-bd58-0a97f304470e" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_d065f412-cf36-4851-9030-ad59d19b2444" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation_cef8b54a-d80b-4fff-8017-30283779d484" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_ba79198e-f3cd-4387-bd58-0a97f304470e" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation_cef8b54a-d80b-4fff-8017-30283779d484" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_c1048dd5-6d85-4df8-9b68-96f32939f5f6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_ba79198e-f3cd-4387-bd58-0a97f304470e" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_c1048dd5-6d85-4df8-9b68-96f32939f5f6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_cea7d68e-0286-4834-a778-6e8dadbafd4e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_ba79198e-f3cd-4387-bd58-0a97f304470e" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_cea7d68e-0286-4834-a778-6e8dadbafd4e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_3ba710b2-73b6-4f8c-91cf-3fb2190aac92" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_be00dbe2-9a5a-40cf-b43f-3caa1edbdaaa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_3ba710b2-73b6-4f8c-91cf-3fb2190aac92" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_be00dbe2-9a5a-40cf-b43f-3caa1edbdaaa" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_22a11014-e3ad-4b80-8c1c-de6e006828ef" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_3ba710b2-73b6-4f8c-91cf-3fb2190aac92" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_22a11014-e3ad-4b80-8c1c-de6e006828ef" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_b06ee7b8-7ecf-4c9e-9a76-14abb1b389d7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Goodwill"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_3ba710b2-73b6-4f8c-91cf-3fb2190aac92" xlink:to="loc_us-gaap_Goodwill_b06ee7b8-7ecf-4c9e-9a76-14abb1b389d7" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails" xlink:type="simple" xlink:href="form-20210327.xsd#AcquisitionIntangibleAssetsAcquiredDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssets" xlink:type="simple" xlink:href="form-20210327.xsd#GoodwillandIntangibleAssets"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/GoodwillandIntangibleAssets" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsTables" xlink:type="simple" xlink:href="form-20210327.xsd#GoodwillandIntangibleAssetsTables"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/GoodwillandIntangibleAssetsTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails" xlink:type="simple" xlink:href="form-20210327.xsd#GoodwillandIntangibleAssetsGoodwillDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsAdditionalinformationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#GoodwillandIntangibleAssetsAdditionalinformationDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/GoodwillandIntangibleAssetsAdditionalinformationDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails" xlink:type="simple" xlink:href="form-20210327.xsd#GoodwillandIntangibleAssetsIntangibleAssetsDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_9dac08eb-8eba-412e-82f2-4881b6735ed9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_36762718-9cd4-4dd9-ace7-80333e7ff7e6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_9dac08eb-8eba-412e-82f2-4881b6735ed9" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_36762718-9cd4-4dd9-ace7-80333e7ff7e6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_2f61c003-0d52-4e39-860d-a3bcf4f39063" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_9dac08eb-8eba-412e-82f2-4881b6735ed9" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_2f61c003-0d52-4e39-860d-a3bcf4f39063" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails" xlink:type="simple" xlink:href="form-20210327.xsd#GoodwillandIntangibleAssetsAmortizationExpenseDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal_12f4b722-4d22-432a-a5c8-7dd347efaf4a" xlink:href="form-20210327.xsd#form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour_81ae153d-17ad-467a-ba83-754b576905dd" xlink:href="form-20210327.xsd#form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal_12f4b722-4d22-432a-a5c8-7dd347efaf4a" xlink:to="loc_form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour_81ae153d-17ad-467a-ba83-754b576905dd" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_f93c7b57-bcb0-498e-9374-f4000af0798f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal_12f4b722-4d22-432a-a5c8-7dd347efaf4a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_f93c7b57-bcb0-498e-9374-f4000af0798f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_ed1dbb8c-577c-4543-907e-30d3140367a3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal_12f4b722-4d22-432a-a5c8-7dd347efaf4a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_ed1dbb8c-577c-4543-907e-30d3140367a3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_1253f6c4-f2a5-48ac-b4fc-6421866bba9e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal_12f4b722-4d22-432a-a5c8-7dd347efaf4a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_1253f6c4-f2a5-48ac-b4fc-6421866bba9e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_53b17720-96bf-42b7-9401-8a478a986d8d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal_12f4b722-4d22-432a-a5c8-7dd347efaf4a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_53b17720-96bf-42b7-9401-8a478a986d8d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_7a97767c-b9b7-4431-a5b7-74dd9e988842" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal_12f4b722-4d22-432a-a5c8-7dd347efaf4a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_7a97767c-b9b7-4431-a5b7-74dd9e988842" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/AccruedLiabilities" xlink:type="simple" xlink:href="form-20210327.xsd#AccruedLiabilities"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/AccruedLiabilities" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/AccruedLiabilitiesTables" xlink:type="simple" xlink:href="form-20210327.xsd#AccruedLiabilitiesTables"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/AccruedLiabilitiesTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/AccruedLiabilitiesDetails" xlink:type="simple" xlink:href="form-20210327.xsd#AccruedLiabilitiesDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/AccruedLiabilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_f81a2bc5-97d4-46d9-b5a3-d26deb3de607" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedEmployeeBenefitsCurrent_92b79597-9415-4cd8-bc68-ae8a45b5f7d6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedEmployeeBenefitsCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_f81a2bc5-97d4-46d9-b5a3-d26deb3de607" xlink:to="loc_us-gaap_AccruedEmployeeBenefitsCurrent_92b79597-9415-4cd8-bc68-ae8a45b5f7d6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_98e52700-3286-4123-829e-a60db4be86bb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_f81a2bc5-97d4-46d9-b5a3-d26deb3de607" xlink:to="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_98e52700-3286-4123-829e-a60db4be86bb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_94723e50-b133-4df6-8fef-412faf7674b0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_f81a2bc5-97d4-46d9-b5a3-d26deb3de607" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent_94723e50-b133-4df6-8fef-412faf7674b0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent_5df6c0fd-d913-4d0c-af56-4fadbdb90c47" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_f81a2bc5-97d4-46d9-b5a3-d26deb3de607" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent_5df6c0fd-d913-4d0c-af56-4fadbdb90c47" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_80110ba7-81ec-4d7f-acb9-1b3b13591ad9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_f81a2bc5-97d4-46d9-b5a3-d26deb3de607" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_80110ba7-81ec-4d7f-acb9-1b3b13591ad9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TaxesPayableCurrentAndNoncurrent_e0a11db0-8082-4656-bc34-e2b5560f0aed" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TaxesPayableCurrentAndNoncurrent"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_f81a2bc5-97d4-46d9-b5a3-d26deb3de607" xlink:to="loc_us-gaap_TaxesPayableCurrentAndNoncurrent_e0a11db0-8082-4656-bc34-e2b5560f0aed" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstruments" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstruments"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstruments" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsTables" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsTables"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosure_d398d13b-b350-4a44-952b-4bbfa3770589" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesFairValueDisclosure"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_2e0d1043-7587-43e5-820f-bf9215f14e60" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosure_d398d13b-b350-4a44-952b-4bbfa3770589" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_2e0d1043-7587-43e5-820f-bf9215f14e60" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLiabilities_af121ce8-438b-4b0d-b376-161dc236543a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeLiabilities"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosure_d398d13b-b350-4a44-952b-4bbfa3770589" xlink:to="loc_us-gaap_DerivativeLiabilities_af121ce8-438b-4b0d-b376-161dc236543a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsFairValueDisclosure_2200c5a4-a817-44d4-86ab-2dcec34f90bb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsFairValueDisclosure"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_bc800c2e-fe54-428e-a5bf-3a4eb77af9ac" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsFairValueDisclosure"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsFairValueDisclosure_2200c5a4-a817-44d4-86ab-2dcec34f90bb" xlink:to="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_bc800c2e-fe54-428e-a5bf-3a4eb77af9ac" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MarketableSecurities_abc75978-b6d4-47b7-8edd-11a32b73c2ce" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MarketableSecurities"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsFairValueDisclosure_2200c5a4-a817-44d4-86ab-2dcec34f90bb" xlink:to="loc_us-gaap_MarketableSecurities_abc75978-b6d4-47b7-8edd-11a32b73c2ce" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssets_3771b9fe-5820-48d3-9e11-c992d6a9646c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeAssets"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsFairValueDisclosure_2200c5a4-a817-44d4-86ab-2dcec34f90bb" xlink:to="loc_us-gaap_DerivativeAssets_3771b9fe-5820-48d3-9e11-c992d6a9646c" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAdditionalInformationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsAdditionalInformationDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAdditionalInformationDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/Warranty" xlink:type="simple" xlink:href="form-20210327.xsd#Warranty"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/Warranty" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/WarrantyTables" xlink:type="simple" xlink:href="form-20210327.xsd#WarrantyTables"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/WarrantyTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/WarrantyDetails" xlink:type="simple" xlink:href="form-20210327.xsd#WarrantyDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/WarrantyDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/PropertyPlantandEquipmentnet" xlink:type="simple" xlink:href="form-20210327.xsd#PropertyPlantandEquipmentnet"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/PropertyPlantandEquipmentnet" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/PropertyPlantandEquipmentnetTables" xlink:type="simple" xlink:href="form-20210327.xsd#PropertyPlantandEquipmentnetTables"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/PropertyPlantandEquipmentnetTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails" xlink:type="simple" xlink:href="form-20210327.xsd#PropertyPlantandEquipmentnetDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress_56af41f2-eeed-4aca-bd55-c6701276af5d" xlink:href="form-20210327.xsd#form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_d80f634c-982d-48f1-93e8-0926f198552a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress_56af41f2-eeed-4aca-bd55-c6701276af5d" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_d80f634c-982d-48f1-93e8-0926f198552a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_59fe7778-cc49-4696-8de2-203ab36525b9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress_56af41f2-eeed-4aca-bd55-c6701276af5d" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_59fe7778-cc49-4696-8de2-203ab36525b9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_5b2a080b-87c8-4cb2-9dce-632d5eebad88" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress_87154f61-5ccc-4e30-887e-e4ac5f65d41d" xlink:href="form-20210327.xsd#form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_5b2a080b-87c8-4cb2-9dce-632d5eebad88" xlink:to="loc_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress_87154f61-5ccc-4e30-887e-e4ac5f65d41d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConstructionInProgressGross_8683b7df-33c9-455c-a278-0e30915b0390" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConstructionInProgressGross"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_5b2a080b-87c8-4cb2-9dce-632d5eebad88" xlink:to="loc_us-gaap_ConstructionInProgressGross_8683b7df-33c9-455c-a278-0e30915b0390" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensation" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensation"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensation" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationTables" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationTables"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationAdditionalInformationDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationESPPActivityDetails" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationESPPActivityDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationESPPActivityDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/NetIncomeperShare" xlink:type="simple" xlink:href="form-20210327.xsd#NetIncomeperShare"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/NetIncomeperShare" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/NetIncomeperShareTables" xlink:type="simple" xlink:href="form-20210327.xsd#NetIncomeperShareTables"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/NetIncomeperShareTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/NetIncomeperShareDetails" xlink:type="simple" xlink:href="form-20210327.xsd#NetIncomeperShareDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/NetIncomeperShareDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/CommitmentsandContingencies" xlink:type="simple" xlink:href="form-20210327.xsd#CommitmentsandContingencies"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/CommitmentsandContingencies" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/Leases" xlink:type="simple" xlink:href="form-20210327.xsd#Leases"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/Leases" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/LeasesTables" xlink:type="simple" xlink:href="form-20210327.xsd#LeasesTables"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/LeasesTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/LeasesNarrativeDetails" xlink:type="simple" xlink:href="form-20210327.xsd#LeasesNarrativeDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/LeasesNarrativeDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/LeasesComponentsofLeaseExpenseDetails" xlink:type="simple" xlink:href="form-20210327.xsd#LeasesComponentsofLeaseExpenseDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/LeasesComponentsofLeaseExpenseDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_e131de43-4314-42f8-bcbe-923ac3d48e1b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseCost"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseExpense_d083f790-bd06-42e8-8bbd-b4d95e6b64ec" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseExpense"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_e131de43-4314-42f8-bcbe-923ac3d48e1b" xlink:to="loc_us-gaap_OperatingLeaseExpense_d083f790-bd06-42e8-8bbd-b4d95e6b64ec" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermLeaseCost_17e98c63-15b9-4354-91e0-74d65d8e7aaa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShortTermLeaseCost"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_e131de43-4314-42f8-bcbe-923ac3d48e1b" xlink:to="loc_us-gaap_ShortTermLeaseCost_17e98c63-15b9-4354-91e0-74d65d8e7aaa" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableLeaseCost_4a4d2c66-0c66-49ca-9dc5-70ef2dc29973" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableLeaseCost"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_e131de43-4314-42f8-bcbe-923ac3d48e1b" xlink:to="loc_us-gaap_VariableLeaseCost_4a4d2c66-0c66-49ca-9dc5-70ef2dc29973" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails" xlink:type="simple" xlink:href="form-20210327.xsd#LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_a52a399e-c045-4449-aed2-a0749ffbef5a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_c0e81b0b-fb7b-4cdd-bda6-8558058e514a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_a52a399e-c045-4449-aed2-a0749ffbef5a" xlink:to="loc_us-gaap_OperatingLeaseLiability_c0e81b0b-fb7b-4cdd-bda6-8558058e514a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_731e6c90-69e0-4583-8cca-d8c91ac603ca" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_a52a399e-c045-4449-aed2-a0749ffbef5a" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_731e6c90-69e0-4583-8cca-d8c91ac603ca" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_db7a9a42-9e9b-4d53-a95a-cbdd8af9ef3b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_012dbedc-ace2-42d8-bdc0-c17fc14d922d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeaseLiability_db7a9a42-9e9b-4d53-a95a-cbdd8af9ef3b" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_012dbedc-ace2-42d8-bdc0-c17fc14d922d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_cb780eb4-0ac3-4f86-9e28-fe0e9e96a202" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeaseLiability_db7a9a42-9e9b-4d53-a95a-cbdd8af9ef3b" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_cb780eb4-0ac3-4f86-9e28-fe0e9e96a202" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails_1" xlink:type="simple" xlink:href="form-20210327.xsd#LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails_1"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails_1" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_c80fd023-6478-45f3-9c90-2947e6bb26c4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_d5f311b2-5a06-4150-a837-d353cba8de96" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_c80fd023-6478-45f3-9c90-2947e6bb26c4" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_d5f311b2-5a06-4150-a837-d353cba8de96" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_adbf0a0b-e574-434c-9852-36dbb2171035" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_c80fd023-6478-45f3-9c90-2947e6bb26c4" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_adbf0a0b-e574-434c-9852-36dbb2171035" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_5bddf592-76f6-44f1-9143-bae2277c0b16" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_c80fd023-6478-45f3-9c90-2947e6bb26c4" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_5bddf592-76f6-44f1-9143-bae2277c0b16" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour_44347999-6316-4aeb-93af-49df4de1db5f" xlink:href="form-20210327.xsd#form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_c80fd023-6478-45f3-9c90-2947e6bb26c4" xlink:to="loc_form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour_44347999-6316-4aeb-93af-49df4de1db5f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_84061b5f-257b-427c-bafa-6df316c18e35" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_c80fd023-6478-45f3-9c90-2947e6bb26c4" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_84061b5f-257b-427c-bafa-6df316c18e35" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_1d92d1de-3b40-4ab5-87bc-d4b46f45e94d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_c80fd023-6478-45f3-9c90-2947e6bb26c4" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_1d92d1de-3b40-4ab5-87bc-d4b46f45e94d" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/Revenue" xlink:type="simple" xlink:href="form-20210327.xsd#Revenue"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/Revenue" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/RevenueAdditionalInformationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#RevenueAdditionalInformationDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/RevenueAdditionalInformationDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#RevenueRemainingPerformanceObligationDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails_1" xlink:type="simple" xlink:href="form-20210327.xsd#RevenueRemainingPerformanceObligationDetails_1"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails_1" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformation" xlink:type="simple" xlink:href="form-20210327.xsd#OperatingSegmentsandEnterpriseWideInformation"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformation" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationTables" xlink:type="simple" xlink:href="form-20210327.xsd#OperatingSegmentsandEnterpriseWideInformationTables"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationAdditionalInformationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#OperatingSegmentsandEnterpriseWideInformationAdditionalInformationDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationAdditionalInformationDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails" xlink:type="simple" xlink:href="form-20210327.xsd#OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails" xlink:type="simple" xlink:href="form-20210327.xsd#OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"/>
  <link:calculationLink xlink:role="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails" xlink:type="extended"/>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>7
<FILENAME>form-20210327_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2021 Workiva-->
<!--r:55eb200e-7c73-4bb5-9f15-e61280b04aa0,g:704d941e-e4b3-4657-882c-0679fd4e906c-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/CoverPage" xlink:type="simple" xlink:href="form-20210327.xsd#CoverPage"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/CoverPage" xlink:type="extended" id="i2b84930c0e9d47e7a23554ab239872f4_CoverPage"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets" xlink:type="simple" xlink:href="form-20210327.xsd#CondensedConsolidatedBalanceSheets"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets" xlink:type="extended" id="i213f5022178e40bdbe7177e03bad56df_CondensedConsolidatedBalanceSheets"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/CondensedConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="form-20210327.xsd#CondensedConsolidatedBalanceSheetsParenthetical"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/CondensedConsolidatedBalanceSheetsParenthetical" xlink:type="extended" id="i3da1c17d0b0d49bfb557d734f005b893_CondensedConsolidatedBalanceSheetsParenthetical"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome" xlink:type="simple" xlink:href="form-20210327.xsd#CondensedConsolidatedStatementsofIncome"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome" xlink:type="extended" id="iec43db0bca8349adba79cbca0181e024_CondensedConsolidatedStatementsofIncome"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome" xlink:type="simple" xlink:href="form-20210327.xsd#CondensedConsolidatedStatementsofComprehensiveIncome"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome" xlink:type="extended" id="i018b33e36884405c937a8f55728d514b_CondensedConsolidatedStatementsofComprehensiveIncome"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity" xlink:type="simple" xlink:href="form-20210327.xsd#CondensedConsolidatedStatementsofStockholdersEquity"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity" xlink:type="extended" id="ia51378f62c4647ebb5dc3af4d10e8c0b_CondensedConsolidatedStatementsofStockholdersEquity">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_3d638b2d-f546-4689-9f2b-37db041bd0f7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_3d638b2d-f546-4689-9f2b-37db041bd0f7" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesOutstanding_39a44a6b-b386-426a-b56f-f252e4283d30" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesOutstanding"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_SharesOutstanding_39a44a6b-b386-426a-b56f-f252e4283d30" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_e4516aad-7081-4402-8992-f55207902132" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_StockholdersEquity_e4516aad-7081-4402-8992-f55207902132" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_0427b814-a9a6-4395-ad54-17df89166d2c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_0427b814-a9a6-4395-ad54-17df89166d2c" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_abb2ae62-9139-4e14-aee2-7c59e6192bc8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_abb2ae62-9139-4e14-aee2-7c59e6192bc8" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross_f7ebafbc-f029-457a-a7e2-03f247ebbc6c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross_f7ebafbc-f029-457a-a7e2-03f247ebbc6c" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_723a14f6-c5b8-48fd-8e02-1336813cda45" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_723a14f6-c5b8-48fd-8e02-1336813cda45" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_a2a5ed85-cdbe-414d-a93a-cd87cec3a644" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_a2a5ed85-cdbe-414d-a93a-cd87cec3a644" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_39a27092-f7d5-4cca-baaa-15365dc309a0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_39a27092-f7d5-4cca-baaa-15365dc309a0" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired_98d243bb-3df5-4953-8159-47848d78ad5d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockSharesAcquired"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_TreasuryStockSharesAcquired_98d243bb-3df5-4953-8159-47848d78ad5d" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_4d7fde41-8a76-467b-8887-13a5893e523d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_4d7fde41-8a76-467b-8887-13a5893e523d" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_4b7aa393-f850-41f0-b6d4-86474b2072d7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_4b7aa393-f850-41f0-b6d4-86474b2072d7" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_5e83f9d6-c67f-4d7f-8d64-2877bf56ac2e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_5e83f9d6-c67f-4d7f-8d64-2877bf56ac2e" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_f28933cf-1b43-4282-8554-d7a2b9ad2532" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_NetIncomeLoss_f28933cf-1b43-4282-8554-d7a2b9ad2532" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesOutstanding_b9bd6915-a7ef-46a8-9146-2ef0ed51b1af" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_17efad06-0e59-4744-8037-81b30d7a55af" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_14fed614-2ee4-4a1a-87cc-cb78716acdd8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_3d638b2d-f546-4689-9f2b-37db041bd0f7" xlink:to="loc_us-gaap_StatementTable_14fed614-2ee4-4a1a-87cc-cb78716acdd8" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_34ef76f0-15f8-4768-af5e-4df6ea6c6e43" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_14fed614-2ee4-4a1a-87cc-cb78716acdd8" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_34ef76f0-15f8-4768-af5e-4df6ea6c6e43" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_34ef76f0-15f8-4768-af5e-4df6ea6c6e43_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_34ef76f0-15f8-4768-af5e-4df6ea6c6e43" xlink:to="loc_us-gaap_EquityComponentDomain_34ef76f0-15f8-4768-af5e-4df6ea6c6e43_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_305b48ee-6aad-46c1-9138-07408ffd2c47" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_34ef76f0-15f8-4768-af5e-4df6ea6c6e43" xlink:to="loc_us-gaap_EquityComponentDomain_305b48ee-6aad-46c1-9138-07408ffd2c47" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_3ee065c6-016c-4ce5-8b4e-245af91fc58e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_305b48ee-6aad-46c1-9138-07408ffd2c47" xlink:to="loc_us-gaap_CommonStockMember_3ee065c6-016c-4ce5-8b4e-245af91fc58e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockMember_47b5ca29-17c3-4f09-9833-12e9a076ce41" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_305b48ee-6aad-46c1-9138-07408ffd2c47" xlink:to="loc_us-gaap_TreasuryStockMember_47b5ca29-17c3-4f09-9833-12e9a076ce41" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_0372732f-fd31-45bd-be30-b27d5c42acdb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_305b48ee-6aad-46c1-9138-07408ffd2c47" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_0372732f-fd31-45bd-be30-b27d5c42acdb" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_8a020c5e-b40e-40fb-aded-4449779325b8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_305b48ee-6aad-46c1-9138-07408ffd2c47" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_8a020c5e-b40e-40fb-aded-4449779325b8" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_b6f5c9d0-4997-4775-ab6b-aa6abf3e4ee7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RetainedEarningsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_305b48ee-6aad-46c1-9138-07408ffd2c47" xlink:to="loc_us-gaap_RetainedEarningsMember_b6f5c9d0-4997-4775-ab6b-aa6abf3e4ee7" xlink:type="arc" order="4"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows" xlink:type="simple" xlink:href="form-20210327.xsd#CondensedConsolidatedStatementsofCashFlows"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows" xlink:type="extended" id="ic4a0d4e7c3d44e6fa28b0c7676137e09_CondensedConsolidatedStatementsofCashFlows"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncements" xlink:type="simple" xlink:href="form-20210327.xsd#BasisofPresentationandNewAccountingPronouncements"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncements" xlink:type="extended" id="id663c53b71b848ee86ef426c68d46edc_BasisofPresentationandNewAccountingPronouncements"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncementsPolicies" xlink:type="simple" xlink:href="form-20210327.xsd#BasisofPresentationandNewAccountingPronouncementsPolicies"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncementsPolicies" xlink:type="extended" id="i91dd624346ab4a52a083652d731caabd_BasisofPresentationandNewAccountingPronouncementsPolicies"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisks" xlink:type="simple" xlink:href="form-20210327.xsd#ConcentrationofCreditandOtherRisks"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisks" xlink:type="extended" id="i0ad5c5a645b54ed18deb3b4a4d3cbb04_ConcentrationofCreditandOtherRisks"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksTables" xlink:type="simple" xlink:href="form-20210327.xsd#ConcentrationofCreditandOtherRisksTables"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksTables" xlink:type="extended" id="i9ea14e87a39242459b20f438362c169a_ConcentrationofCreditandOtherRisksTables"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails" xlink:type="simple" xlink:href="form-20210327.xsd#ConcentrationofCreditandOtherRisksDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails" xlink:type="extended" id="ic7a69d3fd4054c5e80ccced6ff9fb9df_ConcentrationofCreditandOtherRisksDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskLineItems_26fc87e4-e86b-48ec-a44b-fc38f74bb4fe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_14c234a6-050a-4ee0-b092-aedaa5fbb8f7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_26fc87e4-e86b-48ec-a44b-fc38f74bb4fe" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_14c234a6-050a-4ee0-b092-aedaa5fbb8f7" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTable_fe670882-13e2-494f-9b36-7486fedb616a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_26fc87e4-e86b-48ec-a44b-fc38f74bb4fe" xlink:to="loc_us-gaap_ConcentrationRiskTable_fe670882-13e2-494f-9b36-7486fedb616a" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_61cc96d6-9660-4978-9638-b5365a297569" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_fe670882-13e2-494f-9b36-7486fedb616a" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_61cc96d6-9660-4978-9638-b5365a297569" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_61cc96d6-9660-4978-9638-b5365a297569_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_61cc96d6-9660-4978-9638-b5365a297569" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_61cc96d6-9660-4978-9638-b5365a297569_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_672da9fc-b7da-48db-9846-d8bb1958fef5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_61cc96d6-9660-4978-9638-b5365a297569" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_672da9fc-b7da-48db-9846-d8bb1958fef5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_834d3b7a-ef49-4171-bc18-81bdf6836020" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CustomerConcentrationRiskMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_672da9fc-b7da-48db-9846-d8bb1958fef5" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_834d3b7a-ef49-4171-bc18-81bdf6836020" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_47ff52d9-c4f6-415a-a566-e63d67831603" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_fe670882-13e2-494f-9b36-7486fedb616a" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_47ff52d9-c4f6-415a-a566-e63d67831603" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_47ff52d9-c4f6-415a-a566-e63d67831603_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_47ff52d9-c4f6-415a-a566-e63d67831603" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_47ff52d9-c4f6-415a-a566-e63d67831603_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_1e41358c-c428-4906-a731-0e62e838630b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_47ff52d9-c4f6-415a-a566-e63d67831603" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_1e41358c-c428-4906-a731-0e62e838630b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerMember_eb7cf1ca-6bd9-4163-8a18-d96ac962b998" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_1e41358c-c428-4906-a731-0e62e838630b" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerMember_eb7cf1ca-6bd9-4163-8a18-d96ac962b998" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableMember_1ebdb2b1-26b9-4aa8-bcd8-cb5da980da2c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_1e41358c-c428-4906-a731-0e62e838630b" xlink:to="loc_us-gaap_AccountsReceivableMember_1ebdb2b1-26b9-4aa8-bcd8-cb5da980da2c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MajorCustomersAxis_80dd0b9d-63bb-4750-a1c2-528c6e1bd0bb" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MajorCustomersAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_fe670882-13e2-494f-9b36-7486fedb616a" xlink:to="loc_srt_MajorCustomersAxis_80dd0b9d-63bb-4750-a1c2-528c6e1bd0bb" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain_80dd0b9d-63bb-4750-a1c2-528c6e1bd0bb_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_MajorCustomersAxis_80dd0b9d-63bb-4750-a1c2-528c6e1bd0bb" xlink:to="loc_srt_NameOfMajorCustomerDomain_80dd0b9d-63bb-4750-a1c2-528c6e1bd0bb_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain_eb66847a-297d-4a96-bd8f-7509d19915d2" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_MajorCustomersAxis_80dd0b9d-63bb-4750-a1c2-528c6e1bd0bb" xlink:to="loc_srt_NameOfMajorCustomerDomain_eb66847a-297d-4a96-bd8f-7509d19915d2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_IntelMember_8b01c7e9-4273-4415-989a-efbb4d52d91a" xlink:href="form-20210327.xsd#form_IntelMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_eb66847a-297d-4a96-bd8f-7509d19915d2" xlink:to="loc_form_IntelMember_8b01c7e9-4273-4415-989a-efbb4d52d91a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_TaiwanSemiconductorManufacturingCoLTDMember_53938c70-eafd-4777-b7ef-89a176b1fd62" xlink:href="form-20210327.xsd#form_TaiwanSemiconductorManufacturingCoLTDMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_eb66847a-297d-4a96-bd8f-7509d19915d2" xlink:to="loc_form_TaiwanSemiconductorManufacturingCoLTDMember_53938c70-eafd-4777-b7ef-89a176b1fd62" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_MajorCustomer1Member_1deee1ea-75dd-4a06-842d-ee31655a9eb6" xlink:href="form-20210327.xsd#form_MajorCustomer1Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_eb66847a-297d-4a96-bd8f-7509d19915d2" xlink:to="loc_form_MajorCustomer1Member_1deee1ea-75dd-4a06-842d-ee31655a9eb6" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_MajorCustomer2Member_df92da5e-8b1f-46fc-aa1e-8b643fbadbe3" xlink:href="form-20210327.xsd#form_MajorCustomer2Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_eb66847a-297d-4a96-bd8f-7509d19915d2" xlink:to="loc_form_MajorCustomer2Member_df92da5e-8b1f-46fc-aa1e-8b643fbadbe3" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/Inventoriesnet" xlink:type="simple" xlink:href="form-20210327.xsd#Inventoriesnet"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/Inventoriesnet" xlink:type="extended" id="idadd451e2f944bf985139410c9ee6b1a_Inventoriesnet"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/InventoriesnetTables" xlink:type="simple" xlink:href="form-20210327.xsd#InventoriesnetTables"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/InventoriesnetTables" xlink:type="extended" id="i9362d8efaace4f4a848a659a7a2bb57b_InventoriesnetTables"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/InventoriesnetDetails" xlink:type="simple" xlink:href="form-20210327.xsd#InventoriesnetDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/InventoriesnetDetails" xlink:type="extended" id="i6c52188ad63e4ffc9fd9dec194dccb7c_InventoriesnetDetails"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/Acquisition" xlink:type="simple" xlink:href="form-20210327.xsd#Acquisition"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/Acquisition" xlink:type="extended" id="i86841c1baccf4261865bbfda65d57109_Acquisition"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/AcquisitionTables" xlink:type="simple" xlink:href="form-20210327.xsd#AcquisitionTables"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/AcquisitionTables" xlink:type="extended" id="if8216ae765ef42f183dfbca141682882_AcquisitionTables"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#AcquisitionAdditionalInformationDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails" xlink:type="extended" id="iaf0b59c36b734a5caac0510c84977a85_AcquisitionAdditionalInformationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_3a5041f4-b0b9-451d-8d20-f697c00ce9db" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_9b65ea58-f80a-4c12-9628-6c3dc8706629" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_3a5041f4-b0b9-451d-8d20-f697c00ce9db" xlink:to="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_9b65ea58-f80a-4c12-9628-6c3dc8706629" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_6b1a616e-e25e-4fbd-b125-ce0f34e7cde1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_3a5041f4-b0b9-451d-8d20-f697c00ce9db" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_6b1a616e-e25e-4fbd-b125-ce0f34e7cde1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_95a44609-55ee-4942-8509-b35f891d7d89" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_3a5041f4-b0b9-451d-8d20-f697c00ce9db" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_95a44609-55ee-4942-8509-b35f891d7d89" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_SensorMarketsOperatingTemperature_5102248e-26b2-4da0-a9e5-9596af0911e2" xlink:href="form-20210327.xsd#form_SensorMarketsOperatingTemperature"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_3a5041f4-b0b9-451d-8d20-f697c00ce9db" xlink:to="loc_form_SensorMarketsOperatingTemperature_5102248e-26b2-4da0-a9e5-9596af0911e2" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fb19bf93-ac43-4a7f-8640-579ea6fa0bab" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_3a5041f4-b0b9-451d-8d20-f697c00ce9db" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fb19bf93-ac43-4a7f-8640-579ea6fa0bab" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_97930470-8ec0-4e2c-b9de-b17240868223" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fb19bf93-ac43-4a7f-8640-579ea6fa0bab" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_97930470-8ec0-4e2c-b9de-b17240868223" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_97930470-8ec0-4e2c-b9de-b17240868223_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_97930470-8ec0-4e2c-b9de-b17240868223" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_97930470-8ec0-4e2c-b9de-b17240868223_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_151f88b1-3930-4b72-8bc9-2f5066b993a9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_97930470-8ec0-4e2c-b9de-b17240868223" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_151f88b1-3930-4b72-8bc9-2f5066b993a9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_BaldwinParkMember_17dae192-e895-4006-8970-a2843eb051ad" xlink:href="form-20210327.xsd#form_BaldwinParkMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_151f88b1-3930-4b72-8bc9-2f5066b993a9" xlink:to="loc_form_BaldwinParkMember_17dae192-e895-4006-8970-a2843eb051ad" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_HighPrecisionDevicesIncMember_f0142cdb-f5e9-4cec-8f42-172e54672e91" xlink:href="form-20210327.xsd#form_HighPrecisionDevicesIncMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_151f88b1-3930-4b72-8bc9-2f5066b993a9" xlink:to="loc_form_HighPrecisionDevicesIncMember_f0142cdb-f5e9-4cec-8f42-172e54672e91" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_6ce92238-10e8-4623-8b66-e4adc7a4a871" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fb19bf93-ac43-4a7f-8640-579ea6fa0bab" xlink:to="loc_srt_RangeAxis_6ce92238-10e8-4623-8b66-e4adc7a4a871" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_6ce92238-10e8-4623-8b66-e4adc7a4a871_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_6ce92238-10e8-4623-8b66-e4adc7a4a871" xlink:to="loc_srt_RangeMember_6ce92238-10e8-4623-8b66-e4adc7a4a871_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_3d02e506-6b7f-4d9a-80f7-aaeba254a928" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_6ce92238-10e8-4623-8b66-e4adc7a4a871" xlink:to="loc_srt_RangeMember_3d02e506-6b7f-4d9a-80f7-aaeba254a928" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_58e4d058-6b36-4131-9f82-65ccdb25904f" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_3d02e506-6b7f-4d9a-80f7-aaeba254a928" xlink:to="loc_srt_MinimumMember_58e4d058-6b36-4131-9f82-65ccdb25904f" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails" xlink:type="simple" xlink:href="form-20210327.xsd#AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails" xlink:type="extended" id="ib60185dfe69741418dae9d8d10a13fad_AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_2db7e212-61b9-4ace-a2bb-73c4e5e7daae" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_2db7e212-61b9-4ace-a2bb-73c4e5e7daae" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_2471bb76-a241-4330-aa55-8f5f3bf696cb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_2471bb76-a241-4330-aa55-8f5f3bf696cb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_59cea4fe-38f5-4c53-b9ff-943bb32444f8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_59cea4fe-38f5-4c53-b9ff-943bb32444f8" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_1dc17876-856c-458b-84e1-8d2d4dbf1d82" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_1dc17876-856c-458b-84e1-8d2d4dbf1d82" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets_457dc936-5356-4218-99a6-2aa4ba4349a3" xlink:href="form-20210327.xsd#form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets_457dc936-5356-4218-99a6-2aa4ba4349a3" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets_539cc68b-45c7-4c4b-b65c-8c2d5be0f0d2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets_539cc68b-45c7-4c4b-b65c-8c2d5be0f0d2" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_ba72a38e-0cd7-4a6f-a5c9-5e434ae5014d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_ba72a38e-0cd7-4a6f-a5c9-5e434ae5014d" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_bf7a18f6-9aaf-4b45-a987-1ffb16573889" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_bf7a18f6-9aaf-4b45-a987-1ffb16573889" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_77769a1b-a3d3-4849-8cb8-61a4e4b1cd38" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_77769a1b-a3d3-4849-8cb8-61a4e4b1cd38" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation_97bf97a5-220d-4ed0-ab45-cc94b9d77bb3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation_97bf97a5-220d-4ed0-ab45-cc94b9d77bb3" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_73b7f3d3-8797-4ce2-a16c-9268e5723c76" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_73b7f3d3-8797-4ce2-a16c-9268e5723c76" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_0ae891f7-0bec-435e-a067-b329527c031e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_0ae891f7-0bec-435e-a067-b329527c031e" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_742acd87-6b71-4c15-ad14-af0c091fa9ef" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_742acd87-6b71-4c15-ad14-af0c091fa9ef" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_a3eb1f99-c952-4c7d-8436-5b8600ff17e0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Goodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_Goodwill_a3eb1f99-c952-4c7d-8436-5b8600ff17e0" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_3e3c5181-bd26-4f58-b2a5-715d8aaa07e8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_3e3c5181-bd26-4f58-b2a5-715d8aaa07e8" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_ff9d6cdb-9e3a-445f-b69d-dd4acb796731" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_ff9d6cdb-9e3a-445f-b69d-dd4acb796731" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_cd6a1f2b-fd2c-45d4-8100-313b59ac1722" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_ff9d6cdb-9e3a-445f-b69d-dd4acb796731" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_cd6a1f2b-fd2c-45d4-8100-313b59ac1722" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_cd6a1f2b-fd2c-45d4-8100-313b59ac1722_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_cd6a1f2b-fd2c-45d4-8100-313b59ac1722" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_cd6a1f2b-fd2c-45d4-8100-313b59ac1722_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_d3713566-42db-4aac-84e2-48608241df76" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_cd6a1f2b-fd2c-45d4-8100-313b59ac1722" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_d3713566-42db-4aac-84e2-48608241df76" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_BaldwinParkMember_557d6b02-da54-46ca-b637-e9095053c68e" xlink:href="form-20210327.xsd#form_BaldwinParkMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_d3713566-42db-4aac-84e2-48608241df76" xlink:to="loc_form_BaldwinParkMember_557d6b02-da54-46ca-b637-e9095053c68e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_HighPrecisionDevicesIncMember_dabf6f36-a2ee-4771-92a8-18e3fc94d147" xlink:href="form-20210327.xsd#form_HighPrecisionDevicesIncMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_d3713566-42db-4aac-84e2-48608241df76" xlink:to="loc_form_HighPrecisionDevicesIncMember_dabf6f36-a2ee-4771-92a8-18e3fc94d147" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails" xlink:type="simple" xlink:href="form-20210327.xsd#AcquisitionIntangibleAssetsAcquiredDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails" xlink:type="extended" id="i3d636a2f660c4479b9140316cbd58050_AcquisitionIntangibleAssetsAcquiredDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_8dc86216-6d09-41db-a635-e3648d464be1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_52ea4635-46a6-407f-ad9f-3f37f11066e8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_8dc86216-6d09-41db-a635-e3648d464be1" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_52ea4635-46a6-407f-ad9f-3f37f11066e8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_9a11e1ff-d7cc-429f-b814-6394107e8b45" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_8dc86216-6d09-41db-a635-e3648d464be1" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_9a11e1ff-d7cc-429f-b814-6394107e8b45" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_bd36416b-9fb3-4208-888c-b5f8a7099c74" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_8dc86216-6d09-41db-a635-e3648d464be1" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_bd36416b-9fb3-4208-888c-b5f8a7099c74" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_9365bdee-288e-492c-ad45-a25344826d9d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_bd36416b-9fb3-4208-888c-b5f8a7099c74" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_9365bdee-288e-492c-ad45-a25344826d9d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_9365bdee-288e-492c-ad45-a25344826d9d_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_9365bdee-288e-492c-ad45-a25344826d9d" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_9365bdee-288e-492c-ad45-a25344826d9d_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_90836312-27d7-42ab-bf08-9cf3f1f471d6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_9365bdee-288e-492c-ad45-a25344826d9d" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_90836312-27d7-42ab-bf08-9cf3f1f471d6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DevelopedTechnologyRightsMember_8be94914-4436-4f41-a2e6-b6e37f672d84" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DevelopedTechnologyRightsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_90836312-27d7-42ab-bf08-9cf3f1f471d6" xlink:to="loc_us-gaap_DevelopedTechnologyRightsMember_8be94914-4436-4f41-a2e6-b6e37f672d84" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_3354b18b-0313-4645-b30a-270d9f9fed97" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_90836312-27d7-42ab-bf08-9cf3f1f471d6" xlink:to="loc_us-gaap_CustomerRelationshipsMember_3354b18b-0313-4645-b30a-270d9f9fed97" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrderOrProductionBacklogMember_32f08474-e6b6-4c91-be51-08add1155613" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OrderOrProductionBacklogMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_90836312-27d7-42ab-bf08-9cf3f1f471d6" xlink:to="loc_us-gaap_OrderOrProductionBacklogMember_32f08474-e6b6-4c91-be51-08add1155613" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradeNamesMember_2c45eb15-282a-4229-8dc1-f974c765088c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TradeNamesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_90836312-27d7-42ab-bf08-9cf3f1f471d6" xlink:to="loc_us-gaap_TradeNamesMember_2c45eb15-282a-4229-8dc1-f974c765088c" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_4f64c5c6-ee49-4650-a40b-88618a569720" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_bd36416b-9fb3-4208-888c-b5f8a7099c74" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_4f64c5c6-ee49-4650-a40b-88618a569720" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_4f64c5c6-ee49-4650-a40b-88618a569720_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_4f64c5c6-ee49-4650-a40b-88618a569720" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_4f64c5c6-ee49-4650-a40b-88618a569720_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dd7d6341-7120-4e6b-bd8f-033d7a92b639" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_4f64c5c6-ee49-4650-a40b-88618a569720" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dd7d6341-7120-4e6b-bd8f-033d7a92b639" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_HighPrecisionDevicesIncMember_1d78c537-5b9a-4396-96f9-1f4cb28e104b" xlink:href="form-20210327.xsd#form_HighPrecisionDevicesIncMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dd7d6341-7120-4e6b-bd8f-033d7a92b639" xlink:to="loc_form_HighPrecisionDevicesIncMember_1d78c537-5b9a-4396-96f9-1f4cb28e104b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_BaldwinParkMember_ac63aebe-2bfe-4068-97a7-99c6bec60c07" xlink:href="form-20210327.xsd#form_BaldwinParkMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dd7d6341-7120-4e6b-bd8f-033d7a92b639" xlink:to="loc_form_BaldwinParkMember_ac63aebe-2bfe-4068-97a7-99c6bec60c07" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_7c6b599c-858c-41c4-be93-294a60096413" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_bd36416b-9fb3-4208-888c-b5f8a7099c74" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_7c6b599c-858c-41c4-be93-294a60096413" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_7c6b599c-858c-41c4-be93-294a60096413_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_7c6b599c-858c-41c4-be93-294a60096413" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_7c6b599c-858c-41c4-be93-294a60096413_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_20f74302-7bc0-4815-bb49-b16c11024d84" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_7c6b599c-858c-41c4-be93-294a60096413" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_20f74302-7bc0-4815-bb49-b16c11024d84" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InProcessResearchAndDevelopmentMember_f96f7d43-a874-4cb2-8995-cd7a9c64e255" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InProcessResearchAndDevelopmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_20f74302-7bc0-4815-bb49-b16c11024d84" xlink:to="loc_us-gaap_InProcessResearchAndDevelopmentMember_f96f7d43-a874-4cb2-8995-cd7a9c64e255" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssets" xlink:type="simple" xlink:href="form-20210327.xsd#GoodwillandIntangibleAssets"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/GoodwillandIntangibleAssets" xlink:type="extended" id="icbb223c3ba0a40448107a73d1e01b907_GoodwillandIntangibleAssets"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsTables" xlink:type="simple" xlink:href="form-20210327.xsd#GoodwillandIntangibleAssetsTables"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/GoodwillandIntangibleAssetsTables" xlink:type="extended" id="iee4367e96e4d4e92bf1c4ce81437b943_GoodwillandIntangibleAssetsTables"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails" xlink:type="simple" xlink:href="form-20210327.xsd#GoodwillandIntangibleAssetsGoodwillDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails" xlink:type="extended" id="ic1a5d7601e8a47c3829169b80b3f316a_GoodwillandIntangibleAssetsGoodwillDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillLineItems_9869d3be-66d1-4588-bf92-12625c08f79d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillRollForward_56444a85-9c64-49ea-b0e3-f15b0b327e6e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillLineItems_9869d3be-66d1-4588-bf92-12625c08f79d" xlink:to="loc_us-gaap_GoodwillRollForward_56444a85-9c64-49ea-b0e3-f15b0b327e6e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_1299f485-6e2f-4a52-8d3d-e5dea80bfc93" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Goodwill"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillRollForward_56444a85-9c64-49ea-b0e3-f15b0b327e6e" xlink:to="loc_us-gaap_Goodwill_1299f485-6e2f-4a52-8d3d-e5dea80bfc93" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod_87fdbd30-51e4-4a9b-a006-f25725251bc0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAcquiredDuringPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillRollForward_56444a85-9c64-49ea-b0e3-f15b0b327e6e" xlink:to="loc_us-gaap_GoodwillAcquiredDuringPeriod_87fdbd30-51e4-4a9b-a006-f25725251bc0" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_e69433ed-27ec-427c-9264-8d9cabf9b40a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_GoodwillRollForward_56444a85-9c64-49ea-b0e3-f15b0b327e6e" xlink:to="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_e69433ed-27ec-427c-9264-8d9cabf9b40a" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_b6d23d37-31fd-4e34-8aef-fb825632bfd0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Goodwill"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable_6a59061d-db81-4bff-b4be-67e4b2f89411" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfGoodwillTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_GoodwillLineItems_9869d3be-66d1-4588-bf92-12625c08f79d" xlink:to="loc_us-gaap_ScheduleOfGoodwillTable_6a59061d-db81-4bff-b4be-67e4b2f89411" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_b6120b77-ab5a-4cc7-a141-c6a0857ba163" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_6a59061d-db81-4bff-b4be-67e4b2f89411" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_b6120b77-ab5a-4cc7-a141-c6a0857ba163" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_b6120b77-ab5a-4cc7-a141-c6a0857ba163_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_b6120b77-ab5a-4cc7-a141-c6a0857ba163" xlink:to="loc_us-gaap_SegmentDomain_b6120b77-ab5a-4cc7-a141-c6a0857ba163_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_5062cd29-39d7-4dcd-b265-8f9efe2e6414" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_b6120b77-ab5a-4cc7-a141-c6a0857ba163" xlink:to="loc_us-gaap_SegmentDomain_5062cd29-39d7-4dcd-b265-8f9efe2e6414" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_ProbeCardsSegmentMember_0105571b-ff89-4af0-929e-1493cb0a2cbd" xlink:href="form-20210327.xsd#form_ProbeCardsSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_5062cd29-39d7-4dcd-b265-8f9efe2e6414" xlink:to="loc_form_ProbeCardsSegmentMember_0105571b-ff89-4af0-929e-1493cb0a2cbd" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_SystemsSegmentMember_a6161044-e137-4174-8eee-066c0c6d52f2" xlink:href="form-20210327.xsd#form_SystemsSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_5062cd29-39d7-4dcd-b265-8f9efe2e6414" xlink:to="loc_form_SystemsSegmentMember_a6161044-e137-4174-8eee-066c0c6d52f2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_b1074732-59d9-41da-81b4-5c7506875d37" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_6a59061d-db81-4bff-b4be-67e4b2f89411" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_b1074732-59d9-41da-81b4-5c7506875d37" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_b1074732-59d9-41da-81b4-5c7506875d37_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_b1074732-59d9-41da-81b4-5c7506875d37" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_b1074732-59d9-41da-81b4-5c7506875d37_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f050d04e-7f5c-4953-8b0d-5f957d10fdd4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_b1074732-59d9-41da-81b4-5c7506875d37" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f050d04e-7f5c-4953-8b0d-5f957d10fdd4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_FRTGmbHMember_4571de0d-f43a-4e29-9166-15ceda9a5fd8" xlink:href="form-20210327.xsd#form_FRTGmbHMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f050d04e-7f5c-4953-8b0d-5f957d10fdd4" xlink:to="loc_form_FRTGmbHMember_4571de0d-f43a-4e29-9166-15ceda9a5fd8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_BaldwinParkMember_cec2ae17-9443-4b30-9dc0-47c7d5457376" xlink:href="form-20210327.xsd#form_BaldwinParkMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f050d04e-7f5c-4953-8b0d-5f957d10fdd4" xlink:to="loc_form_BaldwinParkMember_cec2ae17-9443-4b30-9dc0-47c7d5457376" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_HighPrecisionDevicesIncMember_37e2f552-3040-4e2c-9e29-46e592baaf4a" xlink:href="form-20210327.xsd#form_HighPrecisionDevicesIncMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f050d04e-7f5c-4953-8b0d-5f957d10fdd4" xlink:to="loc_form_HighPrecisionDevicesIncMember_37e2f552-3040-4e2c-9e29-46e592baaf4a" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsAdditionalinformationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#GoodwillandIntangibleAssetsAdditionalinformationDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/GoodwillandIntangibleAssetsAdditionalinformationDetails" xlink:type="extended" id="i98517ac1764e47e49e1c064d806efd33_GoodwillandIntangibleAssetsAdditionalinformationDetails"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails" xlink:type="simple" xlink:href="form-20210327.xsd#GoodwillandIntangibleAssetsIntangibleAssetsDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails" xlink:type="extended" id="i8650690ef933464b88cea95560e169bf_GoodwillandIntangibleAssetsIntangibleAssetsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_7234579a-2d57-437a-965f-4ac0466753f6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_905a798e-a08c-423e-ac91-884a2ed26328" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_7234579a-2d57-437a-965f-4ac0466753f6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_905a798e-a08c-423e-ac91-884a2ed26328" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_410072ec-28c2-442d-8fdd-9546eb375485" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_7234579a-2d57-437a-965f-4ac0466753f6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_410072ec-28c2-442d-8fdd-9546eb375485" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_e12689fc-7fc6-49cd-aa39-238edd79c0d2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_7234579a-2d57-437a-965f-4ac0466753f6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_e12689fc-7fc6-49cd-aa39-238edd79c0d2" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_d4d96faf-8368-4ebe-848c-e74c4ff7e36d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_7234579a-2d57-437a-965f-4ac0466753f6" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_d4d96faf-8368-4ebe-848c-e74c4ff7e36d" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_9c5031b5-644d-4f7c-9fef-844df9231aae" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_d4d96faf-8368-4ebe-848c-e74c4ff7e36d" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_9c5031b5-644d-4f7c-9fef-844df9231aae" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_9c5031b5-644d-4f7c-9fef-844df9231aae_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_9c5031b5-644d-4f7c-9fef-844df9231aae" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_9c5031b5-644d-4f7c-9fef-844df9231aae_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ea01af58-4386-4b3b-831f-1c6c2c227c18" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_9c5031b5-644d-4f7c-9fef-844df9231aae" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ea01af58-4386-4b3b-831f-1c6c2c227c18" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_ExistingDevelopedTechnologiesMember_a80b56f5-6e9f-4836-be39-09cc153040a7" xlink:href="form-20210327.xsd#form_ExistingDevelopedTechnologiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ea01af58-4386-4b3b-831f-1c6c2c227c18" xlink:to="loc_form_ExistingDevelopedTechnologiesMember_a80b56f5-6e9f-4836-be39-09cc153040a7" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradeNamesMember_01b3cea5-62a4-4404-a258-8507348c6c70" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TradeNamesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ea01af58-4386-4b3b-831f-1c6c2c227c18" xlink:to="loc_us-gaap_TradeNamesMember_01b3cea5-62a4-4404-a258-8507348c6c70" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_e336df26-a597-4113-8077-8ad34a434a5a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ea01af58-4386-4b3b-831f-1c6c2c227c18" xlink:to="loc_us-gaap_CustomerRelationshipsMember_e336df26-a597-4113-8077-8ad34a434a5a" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrderOrProductionBacklogMember_2825ff35-708f-409f-b798-8d1bf12b1bba" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OrderOrProductionBacklogMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ea01af58-4386-4b3b-831f-1c6c2c227c18" xlink:to="loc_us-gaap_OrderOrProductionBacklogMember_2825ff35-708f-409f-b798-8d1bf12b1bba" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InProcessResearchAndDevelopmentMember_3f4ab436-6253-4d3a-bc6d-6ab2264862b4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InProcessResearchAndDevelopmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ea01af58-4386-4b3b-831f-1c6c2c227c18" xlink:to="loc_us-gaap_InProcessResearchAndDevelopmentMember_3f4ab436-6253-4d3a-bc6d-6ab2264862b4" xlink:type="arc" order="4"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails" xlink:type="simple" xlink:href="form-20210327.xsd#GoodwillandIntangibleAssetsAmortizationExpenseDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails" xlink:type="extended" id="i62d767de6467400e9625308c0c340d48_GoodwillandIntangibleAssetsAmortizationExpenseDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_e2fe07fa-1a2a-4ff1-b83f-5491ff713fee" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_a6550ab0-32e6-47b5-864a-57ae5e675503" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_e2fe07fa-1a2a-4ff1-b83f-5491ff713fee" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_a6550ab0-32e6-47b5-864a-57ae5e675503" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_78d4e6ca-38e7-43e3-936b-0e6a27365e0a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_e2fe07fa-1a2a-4ff1-b83f-5491ff713fee" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_78d4e6ca-38e7-43e3-936b-0e6a27365e0a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_75466c32-7c03-4d41-85c1-50f2a4f9fd04" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_78d4e6ca-38e7-43e3-936b-0e6a27365e0a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_75466c32-7c03-4d41-85c1-50f2a4f9fd04" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_f52226c6-598c-407f-b180-63b6db24845d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_78d4e6ca-38e7-43e3-936b-0e6a27365e0a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_f52226c6-598c-407f-b180-63b6db24845d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_a58bb3b1-2fe8-453b-9770-b2e5d78fc83f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_78d4e6ca-38e7-43e3-936b-0e6a27365e0a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_a58bb3b1-2fe8-453b-9770-b2e5d78fc83f" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_cf3c7484-65d6-4053-b65b-1397b9230077" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_78d4e6ca-38e7-43e3-936b-0e6a27365e0a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_cf3c7484-65d6-4053-b65b-1397b9230077" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_272032ca-4a39-457a-95e6-f4776a773ec4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_78d4e6ca-38e7-43e3-936b-0e6a27365e0a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_272032ca-4a39-457a-95e6-f4776a773ec4" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour_99c08acf-1c07-4507-bd6b-4e0ab620108d" xlink:href="form-20210327.xsd#form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_78d4e6ca-38e7-43e3-936b-0e6a27365e0a" xlink:to="loc_form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour_99c08acf-1c07-4507-bd6b-4e0ab620108d" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal_a9f5e329-17da-4eab-8612-d25f77e5bcaf" xlink:href="form-20210327.xsd#form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_78d4e6ca-38e7-43e3-936b-0e6a27365e0a" xlink:to="loc_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal_a9f5e329-17da-4eab-8612-d25f77e5bcaf" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_98d3a59e-6b49-483c-a4a2-d362a8168f0d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_e2fe07fa-1a2a-4ff1-b83f-5491ff713fee" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_98d3a59e-6b49-483c-a4a2-d362a8168f0d" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_437d5dee-657e-4c49-8b66-cc8e40b10c25" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_98d3a59e-6b49-483c-a4a2-d362a8168f0d" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_437d5dee-657e-4c49-8b66-cc8e40b10c25" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_437d5dee-657e-4c49-8b66-cc8e40b10c25_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_437d5dee-657e-4c49-8b66-cc8e40b10c25" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_437d5dee-657e-4c49-8b66-cc8e40b10c25_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_dd9cbd36-d0b4-463a-858e-9e2acda7d5c1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_437d5dee-657e-4c49-8b66-cc8e40b10c25" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_dd9cbd36-d0b4-463a-858e-9e2acda7d5c1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_011a6c5d-e010-4fc7-9eea-7ee14914c8dc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfSalesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_dd9cbd36-d0b4-463a-858e-9e2acda7d5c1" xlink:to="loc_us-gaap_CostOfSalesMember_011a6c5d-e010-4fc7-9eea-7ee14914c8dc" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_43da1d2f-567a-4780-a31c-22e29b304297" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_dd9cbd36-d0b4-463a-858e-9e2acda7d5c1" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_43da1d2f-567a-4780-a31c-22e29b304297" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/AccruedLiabilities" xlink:type="simple" xlink:href="form-20210327.xsd#AccruedLiabilities"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/AccruedLiabilities" xlink:type="extended" id="i49a7f71b749841d79b008fc830e1ec38_AccruedLiabilities"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/AccruedLiabilitiesTables" xlink:type="simple" xlink:href="form-20210327.xsd#AccruedLiabilitiesTables"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/AccruedLiabilitiesTables" xlink:type="extended" id="i6540a85533a6475780fc8aa48483a480_AccruedLiabilitiesTables"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/AccruedLiabilitiesDetails" xlink:type="simple" xlink:href="form-20210327.xsd#AccruedLiabilitiesDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/AccruedLiabilitiesDetails" xlink:type="extended" id="i9f33b012c2e84a099ecc3537612e052e_AccruedLiabilitiesDetails"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstruments" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstruments"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstruments" xlink:type="extended" id="iee6fa86410904d6bb1cbccb883493e77_FairValueandDerivativeInstruments"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsTables" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsTables"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsTables" xlink:type="extended" id="i65e4476ee3684a979b1952c093889caa_FairValueandDerivativeInstrumentsTables"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails" xlink:type="extended" id="i451a65da48bc4cf1991d0d487513b48e_FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_023b5d4c-f9b6-4b04-8121-2591d87d1c56" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_db432ac2-e3b1-4c04-b688-f8acca3afbc1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsFairValueDisclosure"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_023b5d4c-f9b6-4b04-8121-2591d87d1c56" xlink:to="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_db432ac2-e3b1-4c04-b688-f8acca3afbc1" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MarketableSecurities_e478c61b-4ced-40ee-96ab-c8bcba05c4fe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MarketableSecurities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_023b5d4c-f9b6-4b04-8121-2591d87d1c56" xlink:to="loc_us-gaap_MarketableSecurities_e478c61b-4ced-40ee-96ab-c8bcba05c4fe" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssets_bf25323b-a5ee-42a6-860c-ce758f329ee1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_023b5d4c-f9b6-4b04-8121-2591d87d1c56" xlink:to="loc_us-gaap_DerivativeAssets_bf25323b-a5ee-42a6-860c-ce758f329ee1" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsFairValueDisclosure_cb1c24fe-38e1-4b06-b5cd-52c4b0c5544c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsFairValueDisclosure"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_023b5d4c-f9b6-4b04-8121-2591d87d1c56" xlink:to="loc_us-gaap_AssetsFairValueDisclosure_cb1c24fe-38e1-4b06-b5cd-52c4b0c5544c" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLiabilities_79493a20-0de3-4eff-b4e1-3b3e42309db1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeLiabilities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_023b5d4c-f9b6-4b04-8121-2591d87d1c56" xlink:to="loc_us-gaap_DerivativeLiabilities_79493a20-0de3-4eff-b4e1-3b3e42309db1" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_db03fbe6-a1cd-45cf-8579-fdcaac91f546" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_023b5d4c-f9b6-4b04-8121-2591d87d1c56" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_db03fbe6-a1cd-45cf-8579-fdcaac91f546" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosure_d5db04f5-d4cd-40b9-8451-083d44ad615a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesFairValueDisclosure"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_023b5d4c-f9b6-4b04-8121-2591d87d1c56" xlink:to="loc_us-gaap_LiabilitiesFairValueDisclosure_d5db04f5-d4cd-40b9-8451-083d44ad615a" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cd06db7b-c3cb-465f-a2be-1ac78f066b9e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByBalanceSheetGroupingTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_023b5d4c-f9b6-4b04-8121-2591d87d1c56" xlink:to="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cd06db7b-c3cb-465f-a2be-1ac78f066b9e" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_22426492-a425-4915-9e07-4bdeb8cb61dd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cd06db7b-c3cb-465f-a2be-1ac78f066b9e" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_22426492-a425-4915-9e07-4bdeb8cb61dd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_22426492-a425-4915-9e07-4bdeb8cb61dd_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_22426492-a425-4915-9e07-4bdeb8cb61dd" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_22426492-a425-4915-9e07-4bdeb8cb61dd_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_76bbd1f7-d874-4ea8-8d40-fa275e93e08a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_22426492-a425-4915-9e07-4bdeb8cb61dd" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_76bbd1f7-d874-4ea8-8d40-fa275e93e08a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_40747c66-98d1-4e70-a0ba-e68a8f5603cf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_76bbd1f7-d874-4ea8-8d40-fa275e93e08a" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_40747c66-98d1-4e70-a0ba-e68a8f5603cf" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_f4e43c70-650a-4846-9fff-be0e232a5943" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_76bbd1f7-d874-4ea8-8d40-fa275e93e08a" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_f4e43c70-650a-4846-9fff-be0e232a5943" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_f41e947a-336d-415f-b181-dd0cf6aa55f2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_76bbd1f7-d874-4ea8-8d40-fa275e93e08a" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_f41e947a-336d-415f-b181-dd0cf6aa55f2" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByAssetClassAxis_8624f6d5-b722-49c3-9da9-e12ed6793cc6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByAssetClassAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cd06db7b-c3cb-465f-a2be-1ac78f066b9e" xlink:to="loc_us-gaap_FairValueByAssetClassAxis_8624f6d5-b722-49c3-9da9-e12ed6793cc6" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_8624f6d5-b722-49c3-9da9-e12ed6793cc6_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByAssetClassAxis_8624f6d5-b722-49c3-9da9-e12ed6793cc6" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_8624f6d5-b722-49c3-9da9-e12ed6793cc6_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_5d2f547d-49e0-459c-91bb-66ffe76150f1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByAssetClassAxis_8624f6d5-b722-49c3-9da9-e12ed6793cc6" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_5d2f547d-49e0-459c-91bb-66ffe76150f1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MoneyMarketFundsMember_c9454d94-b355-42b1-bd30-59bb78c51ec7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MoneyMarketFundsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_5d2f547d-49e0-459c-91bb-66ffe76150f1" xlink:to="loc_us-gaap_MoneyMarketFundsMember_c9454d94-b355-42b1-bd30-59bb78c51ec7" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommercialPaperMember_f258fd2a-c515-407a-91f0-3de32b8b5cc1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommercialPaperMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_5d2f547d-49e0-459c-91bb-66ffe76150f1" xlink:to="loc_us-gaap_CommercialPaperMember_f258fd2a-c515-407a-91f0-3de32b8b5cc1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USTreasuryBillSecuritiesMember_26347c62-dea7-44c0-af56-3ab74765245f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_USTreasuryBillSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_5d2f547d-49e0-459c-91bb-66ffe76150f1" xlink:to="loc_us-gaap_USTreasuryBillSecuritiesMember_26347c62-dea7-44c0-af56-3ab74765245f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CertificatesOfDepositMember_66130a2f-89d2-40a0-a216-dc44cd07b90c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CertificatesOfDepositMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_5d2f547d-49e0-459c-91bb-66ffe76150f1" xlink:to="loc_us-gaap_CertificatesOfDepositMember_66130a2f-89d2-40a0-a216-dc44cd07b90c" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USGovernmentAgenciesDebtSecuritiesMember_f9e9e5a1-7e43-4836-addf-1f411d09685d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_USGovernmentAgenciesDebtSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_5d2f547d-49e0-459c-91bb-66ffe76150f1" xlink:to="loc_us-gaap_USGovernmentAgenciesDebtSecuritiesMember_f9e9e5a1-7e43-4836-addf-1f411d09685d" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_e9941266-31aa-4e67-9202-93a257a46d88" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CorporateBondSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_5d2f547d-49e0-459c-91bb-66ffe76150f1" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_e9941266-31aa-4e67-9202-93a257a46d88" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_c46c567c-6e18-49f9-84de-1f62c6bad7bf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cd06db7b-c3cb-465f-a2be-1ac78f066b9e" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_c46c567c-6e18-49f9-84de-1f62c6bad7bf" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_c46c567c-6e18-49f9-84de-1f62c6bad7bf_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_c46c567c-6e18-49f9-84de-1f62c6bad7bf" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_c46c567c-6e18-49f9-84de-1f62c6bad7bf_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_9b678721-74c6-4672-be09-b0b31d9b1428" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_c46c567c-6e18-49f9-84de-1f62c6bad7bf" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_9b678721-74c6-4672-be09-b0b31d9b1428" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignExchangeContractMember_304a3ec2-3fb3-4bfb-af58-2ca5929cc432" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ForeignExchangeContractMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_9b678721-74c6-4672-be09-b0b31d9b1428" xlink:to="loc_us-gaap_ForeignExchangeContractMember_304a3ec2-3fb3-4bfb-af58-2ca5929cc432" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestRateSwapMember_87a5afd5-03de-4ff5-b094-9efa62dc102f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InterestRateSwapMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_9b678721-74c6-4672-be09-b0b31d9b1428" xlink:to="loc_us-gaap_InterestRateSwapMember_87a5afd5-03de-4ff5-b094-9efa62dc102f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_2efee886-31e1-4756-bb64-20a32cfe4f16" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cd06db7b-c3cb-465f-a2be-1ac78f066b9e" xlink:to="loc_us-gaap_HedgingDesignationAxis_2efee886-31e1-4756-bb64-20a32cfe4f16" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_2efee886-31e1-4756-bb64-20a32cfe4f16_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_HedgingDesignationAxis_2efee886-31e1-4756-bb64-20a32cfe4f16" xlink:to="loc_us-gaap_HedgingDesignationDomain_2efee886-31e1-4756-bb64-20a32cfe4f16_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_45a47949-7a23-4c01-99e0-4ab7c16314e3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_HedgingDesignationAxis_2efee886-31e1-4756-bb64-20a32cfe4f16" xlink:to="loc_us-gaap_HedgingDesignationDomain_45a47949-7a23-4c01-99e0-4ab7c16314e3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_adc59195-9e7c-4339-9100-e7f0b9ae9fbe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DesignatedAsHedgingInstrumentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_45a47949-7a23-4c01-99e0-4ab7c16314e3" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_adc59195-9e7c-4339-9100-e7f0b9ae9fbe" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAdditionalInformationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsAdditionalInformationDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAdditionalInformationDetails" xlink:type="extended" id="i48660dfbb348479586741fafa2a30f55_FairValueandDerivativeInstrumentsAdditionalInformationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_1b245d74-9e0e-4108-bb1e-b5b008bbd2e5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_ContingentConsiderationCalculationAmountMultipleOfEBIT_ad27e362-db8c-43e2-8d62-a2afefeedc37" xlink:href="form-20210327.xsd#form_ContingentConsiderationCalculationAmountMultipleOfEBIT"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_1b245d74-9e0e-4108-bb1e-b5b008bbd2e5" xlink:to="loc_form_ContingentConsiderationCalculationAmountMultipleOfEBIT_ad27e362-db8c-43e2-8d62-a2afefeedc37" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_8fb024cf-50be-4c6c-aef4-8f58e929d30f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_1b245d74-9e0e-4108-bb1e-b5b008bbd2e5" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_8fb024cf-50be-4c6c-aef4-8f58e929d30f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByBalanceSheetGroupingTable_6856d9fe-cca9-46e2-8ca7-de0b828cc553" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByBalanceSheetGroupingTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_1b245d74-9e0e-4108-bb1e-b5b008bbd2e5" xlink:to="loc_us-gaap_FairValueByBalanceSheetGroupingTable_6856d9fe-cca9-46e2-8ca7-de0b828cc553" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_33e8a702-67e0-4858-b985-0e240a023cbf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_6856d9fe-cca9-46e2-8ca7-de0b828cc553" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_33e8a702-67e0-4858-b985-0e240a023cbf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_33e8a702-67e0-4858-b985-0e240a023cbf_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_33e8a702-67e0-4858-b985-0e240a023cbf" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_33e8a702-67e0-4858-b985-0e240a023cbf_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_0b7116e1-ea6e-46bb-b1d8-f892206a40eb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_33e8a702-67e0-4858-b985-0e240a023cbf" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_0b7116e1-ea6e-46bb-b1d8-f892206a40eb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_FRTMember_ef71007c-84a3-41ee-91b0-3d6c33f2098a" xlink:href="form-20210327.xsd#form_FRTMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_0b7116e1-ea6e-46bb-b1d8-f892206a40eb" xlink:to="loc_form_FRTMember_ef71007c-84a3-41ee-91b0-3d6c33f2098a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_79226f7b-16d1-4cb8-9e79-cfe6d4d13336" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_6856d9fe-cca9-46e2-8ca7-de0b828cc553" xlink:to="loc_srt_RangeAxis_79226f7b-16d1-4cb8-9e79-cfe6d4d13336" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_79226f7b-16d1-4cb8-9e79-cfe6d4d13336_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_79226f7b-16d1-4cb8-9e79-cfe6d4d13336" xlink:to="loc_srt_RangeMember_79226f7b-16d1-4cb8-9e79-cfe6d4d13336_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_d75279bf-feb4-473b-8e81-473a150dbd39" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_79226f7b-16d1-4cb8-9e79-cfe6d4d13336" xlink:to="loc_srt_RangeMember_d75279bf-feb4-473b-8e81-473a150dbd39" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_4963ee63-4145-4c0c-97a5-34628c31070a" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_d75279bf-feb4-473b-8e81-473a150dbd39" xlink:to="loc_srt_MaximumMember_4963ee63-4145-4c0c-97a5-34628c31070a" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails" xlink:type="extended" id="i535582fa6f814a9db8c09a87197d0129_FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_c09cbd73-6a85-4ea6-b318-442f5c0a525e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax_193bc6b2-8169-4dfa-b981-dfd9b00c4f52" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_c09cbd73-6a85-4ea6-b318-442f5c0a525e" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax_193bc6b2-8169-4dfa-b981-dfd9b00c4f52" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax_4cac5f19-f445-4841-b100-d77aea889065" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_c09cbd73-6a85-4ea6-b318-442f5c0a525e" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax_4cac5f19-f445-4841-b100-d77aea889065" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_7370da16-3478-4894-96e9-b0fbade47745" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_c09cbd73-6a85-4ea6-b318-442f5c0a525e" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_7370da16-3478-4894-96e9-b0fbade47745" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_2def88cd-c7af-4dde-91db-3d153919ce86" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_7370da16-3478-4894-96e9-b0fbade47745" xlink:to="loc_us-gaap_HedgingDesignationAxis_2def88cd-c7af-4dde-91db-3d153919ce86" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_2def88cd-c7af-4dde-91db-3d153919ce86_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_HedgingDesignationAxis_2def88cd-c7af-4dde-91db-3d153919ce86" xlink:to="loc_us-gaap_HedgingDesignationDomain_2def88cd-c7af-4dde-91db-3d153919ce86_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_658046c9-dde0-4211-913b-dde7e4cc42df" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_HedgingDesignationAxis_2def88cd-c7af-4dde-91db-3d153919ce86" xlink:to="loc_us-gaap_HedgingDesignationDomain_658046c9-dde0-4211-913b-dde7e4cc42df" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_9e42718d-f76b-49b0-a537-a740bd4b620e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DesignatedAsHedgingInstrumentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_658046c9-dde0-4211-913b-dde7e4cc42df" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_9e42718d-f76b-49b0-a537-a740bd4b620e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_d3f1d5de-a26a-4d43-a1a7-ce476fc2f8ce" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_7370da16-3478-4894-96e9-b0fbade47745" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_d3f1d5de-a26a-4d43-a1a7-ce476fc2f8ce" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_d3f1d5de-a26a-4d43-a1a7-ce476fc2f8ce_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_d3f1d5de-a26a-4d43-a1a7-ce476fc2f8ce" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_d3f1d5de-a26a-4d43-a1a7-ce476fc2f8ce_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_f6ecc03f-61ab-4623-a6da-702bbdcb6b97" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_d3f1d5de-a26a-4d43-a1a7-ce476fc2f8ce" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_f6ecc03f-61ab-4623-a6da-702bbdcb6b97" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestRateSwapMember_65550aab-4c04-4214-911d-d9f7611fec1c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InterestRateSwapMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_f6ecc03f-61ab-4623-a6da-702bbdcb6b97" xlink:to="loc_us-gaap_InterestRateSwapMember_65550aab-4c04-4214-911d-d9f7611fec1c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_e0635a46-bf30-471b-972d-1453736fe11c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_7370da16-3478-4894-96e9-b0fbade47745" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_e0635a46-bf30-471b-972d-1453736fe11c" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingRelationshipDomain_e0635a46-bf30-471b-972d-1453736fe11c_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingRelationshipDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_e0635a46-bf30-471b-972d-1453736fe11c" xlink:to="loc_us-gaap_HedgingRelationshipDomain_e0635a46-bf30-471b-972d-1453736fe11c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingRelationshipDomain_90229c2d-2599-4b34-b9a4-f49de9188fb0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingRelationshipDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_e0635a46-bf30-471b-972d-1453736fe11c" xlink:to="loc_us-gaap_HedgingRelationshipDomain_90229c2d-2599-4b34-b9a4-f49de9188fb0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashFlowHedgingMember_edd5f3f7-88ea-4f4a-8085-5e3d3add7838" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashFlowHedgingMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingRelationshipDomain_90229c2d-2599-4b34-b9a4-f49de9188fb0" xlink:to="loc_us-gaap_CashFlowHedgingMember_edd5f3f7-88ea-4f4a-8085-5e3d3add7838" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_7ae5bf7a-eb6e-47b2-a973-4464d41ffa3a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_7370da16-3478-4894-96e9-b0fbade47745" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_7ae5bf7a-eb6e-47b2-a973-4464d41ffa3a" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_7ae5bf7a-eb6e-47b2-a973-4464d41ffa3a_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_7ae5bf7a-eb6e-47b2-a973-4464d41ffa3a" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_7ae5bf7a-eb6e-47b2-a973-4464d41ffa3a_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_e01fc8fb-b802-4571-aea6-e336f5df0b8d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_7ae5bf7a-eb6e-47b2-a973-4464d41ffa3a" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_e01fc8fb-b802-4571-aea6-e336f5df0b8d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember_e0fee4e7-1dc2-43b6-a157-3720baae5671" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_e01fc8fb-b802-4571-aea6-e336f5df0b8d" xlink:to="loc_us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember_e0fee4e7-1dc2-43b6-a157-3720baae5671" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails" xlink:type="extended" id="ifb9ee07af1d541079a4eae725ed3b0b5_FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLineItems_b83d746e-b041-455b-bf17-c4f34f2130ea" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeNotionalAmount_6e1d881b-9798-48ba-8d54-aee62c0ac6da" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeNotionalAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeLineItems_b83d746e-b041-455b-bf17-c4f34f2130ea" xlink:to="loc_us-gaap_DerivativeNotionalAmount_6e1d881b-9798-48ba-8d54-aee62c0ac6da" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeTable_ce08195e-9b2d-44fb-89c7-40648fbfa2fc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DerivativeLineItems_b83d746e-b041-455b-bf17-c4f34f2130ea" xlink:to="loc_us-gaap_DerivativeTable_ce08195e-9b2d-44fb-89c7-40648fbfa2fc" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PositionAxis_21aeecbf-afb4-490b-82b5-d2a372b12b37" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PositionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeTable_ce08195e-9b2d-44fb-89c7-40648fbfa2fc" xlink:to="loc_us-gaap_PositionAxis_21aeecbf-afb4-490b-82b5-d2a372b12b37" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PositionDomain_21aeecbf-afb4-490b-82b5-d2a372b12b37_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PositionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PositionAxis_21aeecbf-afb4-490b-82b5-d2a372b12b37" xlink:to="loc_us-gaap_PositionDomain_21aeecbf-afb4-490b-82b5-d2a372b12b37_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PositionDomain_54e91fb7-ed11-458d-a994-e0b0a5594bdd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PositionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PositionAxis_21aeecbf-afb4-490b-82b5-d2a372b12b37" xlink:to="loc_us-gaap_PositionDomain_54e91fb7-ed11-458d-a994-e0b0a5594bdd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongMember_4bb05bfb-00ef-4ffa-94cd-6211da5579bd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PositionDomain_54e91fb7-ed11-458d-a994-e0b0a5594bdd" xlink:to="loc_us-gaap_LongMember_4bb05bfb-00ef-4ffa-94cd-6211da5579bd" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortMember_db1b83a9-8949-4e37-ac4e-9e1fc51274d0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShortMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PositionDomain_54e91fb7-ed11-458d-a994-e0b0a5594bdd" xlink:to="loc_us-gaap_ShortMember_db1b83a9-8949-4e37-ac4e-9e1fc51274d0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CurrencyAxis_4e4c875b-ce85-4e44-b248-1da80bc172f2" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_CurrencyAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeTable_ce08195e-9b2d-44fb-89c7-40648fbfa2fc" xlink:to="loc_srt_CurrencyAxis_4e4c875b-ce85-4e44-b248-1da80bc172f2" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_AllCurrenciesDomain_4e4c875b-ce85-4e44-b248-1da80bc172f2_default" xlink:href="https://xbrl.sec.gov/currency/2020/currency-2020-01-31.xsd#currency_AllCurrenciesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_CurrencyAxis_4e4c875b-ce85-4e44-b248-1da80bc172f2" xlink:to="loc_currency_AllCurrenciesDomain_4e4c875b-ce85-4e44-b248-1da80bc172f2_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_AllCurrenciesDomain_856658e5-5038-47e0-80e4-7b3394adfecd" xlink:href="https://xbrl.sec.gov/currency/2020/currency-2020-01-31.xsd#currency_AllCurrenciesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_CurrencyAxis_4e4c875b-ce85-4e44-b248-1da80bc172f2" xlink:to="loc_currency_AllCurrenciesDomain_856658e5-5038-47e0-80e4-7b3394adfecd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_EUR_420644cf-aaae-447e-ab38-808f30920fae" xlink:href="https://xbrl.sec.gov/currency/2020/currency-2020-01-31.xsd#currency_EUR"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_856658e5-5038-47e0-80e4-7b3394adfecd" xlink:to="loc_currency_EUR_420644cf-aaae-447e-ab38-808f30920fae" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_JPY_5d4c8915-6259-40b8-90d7-9aea3c12b420" xlink:href="https://xbrl.sec.gov/currency/2020/currency-2020-01-31.xsd#currency_JPY"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_856658e5-5038-47e0-80e4-7b3394adfecd" xlink:to="loc_currency_JPY_5d4c8915-6259-40b8-90d7-9aea3c12b420" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_KRW_e2d53c87-b165-4972-be5f-a5edef7d3792" xlink:href="https://xbrl.sec.gov/currency/2020/currency-2020-01-31.xsd#currency_KRW"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_856658e5-5038-47e0-80e4-7b3394adfecd" xlink:to="loc_currency_KRW_e2d53c87-b165-4972-be5f-a5edef7d3792" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_TWD_327fba45-21b3-4c92-b014-c7eb2f8ba491" xlink:href="https://xbrl.sec.gov/currency/2020/currency-2020-01-31.xsd#currency_TWD"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_856658e5-5038-47e0-80e4-7b3394adfecd" xlink:to="loc_currency_TWD_327fba45-21b3-4c92-b014-c7eb2f8ba491" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_ea51c8b4-c943-44b3-b1af-9d4e121acfa5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeTable_ce08195e-9b2d-44fb-89c7-40648fbfa2fc" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_ea51c8b4-c943-44b3-b1af-9d4e121acfa5" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_ea51c8b4-c943-44b3-b1af-9d4e121acfa5_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_ea51c8b4-c943-44b3-b1af-9d4e121acfa5" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_ea51c8b4-c943-44b3-b1af-9d4e121acfa5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_b2ec668b-9553-42a6-a2c4-06335d850512" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_ea51c8b4-c943-44b3-b1af-9d4e121acfa5" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_b2ec668b-9553-42a6-a2c4-06335d850512" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignExchangeForwardMember_b5c4b067-4882-4b63-9b73-748d5806a5b4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ForeignExchangeForwardMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_b2ec668b-9553-42a6-a2c4-06335d850512" xlink:to="loc_us-gaap_ForeignExchangeForwardMember_b5c4b067-4882-4b63-9b73-748d5806a5b4" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails" xlink:type="extended" id="i69c3dc29432345549927c83e0e95893b_FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativesFairValueLineItems_dc3f220b-85cf-4cdb-a7dc-0efa5723f9af" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativesFairValueLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeGainLossOnDerivativeNet_ddff4a5b-7eba-4903-a9f4-275a066ca538" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeGainLossOnDerivativeNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativesFairValueLineItems_dc3f220b-85cf-4cdb-a7dc-0efa5723f9af" xlink:to="loc_us-gaap_DerivativeGainLossOnDerivativeNet_ddff4a5b-7eba-4903-a9f4-275a066ca538" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_c9199a7f-b868-449e-9253-efbe8355ff85" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DerivativesFairValueLineItems_dc3f220b-85cf-4cdb-a7dc-0efa5723f9af" xlink:to="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_c9199a7f-b868-449e-9253-efbe8355ff85" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_87ec1b4f-0fe1-47ce-98a0-9e348feffb1f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_c9199a7f-b868-449e-9253-efbe8355ff85" xlink:to="loc_us-gaap_HedgingDesignationAxis_87ec1b4f-0fe1-47ce-98a0-9e348feffb1f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_87ec1b4f-0fe1-47ce-98a0-9e348feffb1f_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_HedgingDesignationAxis_87ec1b4f-0fe1-47ce-98a0-9e348feffb1f" xlink:to="loc_us-gaap_HedgingDesignationDomain_87ec1b4f-0fe1-47ce-98a0-9e348feffb1f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_102af52e-00b8-4709-96ca-0d863b327f64" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_HedgingDesignationAxis_87ec1b4f-0fe1-47ce-98a0-9e348feffb1f" xlink:to="loc_us-gaap_HedgingDesignationDomain_102af52e-00b8-4709-96ca-0d863b327f64" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NondesignatedMember_1406fc72-3747-4cc2-93da-30abcef05b3f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NondesignatedMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_102af52e-00b8-4709-96ca-0d863b327f64" xlink:to="loc_us-gaap_NondesignatedMember_1406fc72-3747-4cc2-93da-30abcef05b3f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_b85d21b7-579a-4911-a034-1922bd982894" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_c9199a7f-b868-449e-9253-efbe8355ff85" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_b85d21b7-579a-4911-a034-1922bd982894" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_b85d21b7-579a-4911-a034-1922bd982894_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_b85d21b7-579a-4911-a034-1922bd982894" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_b85d21b7-579a-4911-a034-1922bd982894_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_8301e5e1-4bc4-4809-8e96-f756be22c921" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_b85d21b7-579a-4911-a034-1922bd982894" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_8301e5e1-4bc4-4809-8e96-f756be22c921" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignExchangeForwardMember_14cfb0d0-2e99-4ce0-ac6d-ecb1d364d370" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ForeignExchangeForwardMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_8301e5e1-4bc4-4809-8e96-f756be22c921" xlink:to="loc_us-gaap_ForeignExchangeForwardMember_14cfb0d0-2e99-4ce0-ac6d-ecb1d364d370" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_74790f06-188f-476f-aae4-03f5f6e1bf0c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_c9199a7f-b868-449e-9253-efbe8355ff85" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_74790f06-188f-476f-aae4-03f5f6e1bf0c" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_74790f06-188f-476f-aae4-03f5f6e1bf0c_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_74790f06-188f-476f-aae4-03f5f6e1bf0c" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_74790f06-188f-476f-aae4-03f5f6e1bf0c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_7c024a13-0f7f-40e3-8a73-ddf8ae6d8b51" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_74790f06-188f-476f-aae4-03f5f6e1bf0c" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_7c024a13-0f7f-40e3-8a73-ddf8ae6d8b51" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpenseMember_676298af-49ed-45da-b024-60ef530887d3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpenseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_7c024a13-0f7f-40e3-8a73-ddf8ae6d8b51" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpenseMember_676298af-49ed-45da-b024-60ef530887d3" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails" xlink:type="extended" id="i66718f50d65b49c6975a4412ae59a7cf_FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_7326219b-7855-45e2-b66d-996cc898a3f8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax_0bcce656-26a1-4610-95ca-1ed10fe35878" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_7326219b-7855-45e2-b66d-996cc898a3f8" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax_0bcce656-26a1-4610-95ca-1ed10fe35878" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax_ce3e5514-19c8-4543-80f1-66de2afa99d4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_7326219b-7855-45e2-b66d-996cc898a3f8" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax_ce3e5514-19c8-4543-80f1-66de2afa99d4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_9663356c-5382-4683-bd1c-7315b2a42011" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_7326219b-7855-45e2-b66d-996cc898a3f8" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_9663356c-5382-4683-bd1c-7315b2a42011" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_18c08e45-0d61-49c1-94a4-5aa2e4bb2337" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_9663356c-5382-4683-bd1c-7315b2a42011" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_18c08e45-0d61-49c1-94a4-5aa2e4bb2337" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_18c08e45-0d61-49c1-94a4-5aa2e4bb2337_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_18c08e45-0d61-49c1-94a4-5aa2e4bb2337" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_18c08e45-0d61-49c1-94a4-5aa2e4bb2337_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_03fd033f-44bc-410e-a626-45e7ccacc2ba" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_18c08e45-0d61-49c1-94a4-5aa2e4bb2337" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_03fd033f-44bc-410e-a626-45e7ccacc2ba" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignExchangeForwardMember_7268b1ca-850e-4329-927b-eb6274aaee3b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ForeignExchangeForwardMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_03fd033f-44bc-410e-a626-45e7ccacc2ba" xlink:to="loc_us-gaap_ForeignExchangeForwardMember_7268b1ca-850e-4329-927b-eb6274aaee3b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_78284459-098e-4b92-aadf-8d0fec057cf5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_9663356c-5382-4683-bd1c-7315b2a42011" xlink:to="loc_us-gaap_HedgingDesignationAxis_78284459-098e-4b92-aadf-8d0fec057cf5" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_78284459-098e-4b92-aadf-8d0fec057cf5_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_HedgingDesignationAxis_78284459-098e-4b92-aadf-8d0fec057cf5" xlink:to="loc_us-gaap_HedgingDesignationDomain_78284459-098e-4b92-aadf-8d0fec057cf5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_1cdd0f63-405d-41a3-a081-bfd31f5f8164" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_HedgingDesignationAxis_78284459-098e-4b92-aadf-8d0fec057cf5" xlink:to="loc_us-gaap_HedgingDesignationDomain_1cdd0f63-405d-41a3-a081-bfd31f5f8164" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_824cbe82-781d-475c-9d04-3c4484629c19" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DesignatedAsHedgingInstrumentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_1cdd0f63-405d-41a3-a081-bfd31f5f8164" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_824cbe82-781d-475c-9d04-3c4484629c19" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_da429107-63d2-4426-84ee-c34f9c15a2fe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_9663356c-5382-4683-bd1c-7315b2a42011" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_da429107-63d2-4426-84ee-c34f9c15a2fe" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_da429107-63d2-4426-84ee-c34f9c15a2fe_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_da429107-63d2-4426-84ee-c34f9c15a2fe" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_da429107-63d2-4426-84ee-c34f9c15a2fe_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_f736d3ca-413c-421d-a4d6-775c61173b61" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_da429107-63d2-4426-84ee-c34f9c15a2fe" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_f736d3ca-413c-421d-a4d6-775c61173b61" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_b83b9bb3-9aba-4eca-bfd4-ffab8b943a6e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfSalesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_f736d3ca-413c-421d-a4d6-775c61173b61" xlink:to="loc_us-gaap_CostOfSalesMember_b83b9bb3-9aba-4eca-bfd4-ffab8b943a6e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_f4dcd79e-2c0d-4bb2-9185-ea5eac6e625c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_f736d3ca-413c-421d-a4d6-775c61173b61" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_f4dcd79e-2c0d-4bb2-9185-ea5eac6e625c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_759fa678-38b3-4599-8ad6-8a681eef8244" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_f736d3ca-413c-421d-a4d6-775c61173b61" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_759fa678-38b3-4599-8ad6-8a681eef8244" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails" xlink:type="extended" id="i95187228500f4aed9fcf11bac768df29_FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_4094af92-f67b-4b78-9852-33c1abf8511e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsFairValueDisclosure_3baa8915-11b3-4a13-b095-4ce417be287c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsFairValueDisclosure"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_4094af92-f67b-4b78-9852-33c1abf8511e" xlink:to="loc_us-gaap_AssetsFairValueDisclosure_3baa8915-11b3-4a13-b095-4ce417be287c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosure_0cba9894-710f-419b-8c10-35fe25e7dbac" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesFairValueDisclosure"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_4094af92-f67b-4b78-9852-33c1abf8511e" xlink:to="loc_us-gaap_LiabilitiesFairValueDisclosure_0cba9894-710f-419b-8c10-35fe25e7dbac" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_cb63dc59-a1d5-4708-ad26-2c104f2525c3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_4094af92-f67b-4b78-9852-33c1abf8511e" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_cb63dc59-a1d5-4708-ad26-2c104f2525c3" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis_577a1bc4-a0ed-4dee-8f94-958af16c3065" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByMeasurementFrequencyAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_cb63dc59-a1d5-4708-ad26-2c104f2525c3" xlink:to="loc_us-gaap_FairValueByMeasurementFrequencyAxis_577a1bc4-a0ed-4dee-8f94-958af16c3065" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_577a1bc4-a0ed-4dee-8f94-958af16c3065_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_577a1bc4-a0ed-4dee-8f94-958af16c3065" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_577a1bc4-a0ed-4dee-8f94-958af16c3065_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_ead4dfbd-729d-49ba-92b7-64d613bf1df9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_577a1bc4-a0ed-4dee-8f94-958af16c3065" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_ead4dfbd-729d-49ba-92b7-64d613bf1df9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsNonrecurringMember_b6e3026d-f0af-4eb5-b2be-c2041f888fc2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementsNonrecurringMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementFrequencyDomain_ead4dfbd-729d-49ba-92b7-64d613bf1df9" xlink:to="loc_us-gaap_FairValueMeasurementsNonrecurringMember_b6e3026d-f0af-4eb5-b2be-c2041f888fc2" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/Warranty" xlink:type="simple" xlink:href="form-20210327.xsd#Warranty"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/Warranty" xlink:type="extended" id="i2887bbcf20a14f67ad5a468cf31a643b_Warranty"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/WarrantyTables" xlink:type="simple" xlink:href="form-20210327.xsd#WarrantyTables"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/WarrantyTables" xlink:type="extended" id="i389fd7999cfc4170ab18813460269549_WarrantyTables"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/WarrantyDetails" xlink:type="simple" xlink:href="form-20210327.xsd#WarrantyDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/WarrantyDetails" xlink:type="extended" id="i7ff9deedce4e483bb506a9134ed53a31_WarrantyDetails"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/PropertyPlantandEquipmentnet" xlink:type="simple" xlink:href="form-20210327.xsd#PropertyPlantandEquipmentnet"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/PropertyPlantandEquipmentnet" xlink:type="extended" id="i8a5058ff857c4af8ad7706bc93772af7_PropertyPlantandEquipmentnet"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/PropertyPlantandEquipmentnetTables" xlink:type="simple" xlink:href="form-20210327.xsd#PropertyPlantandEquipmentnetTables"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/PropertyPlantandEquipmentnetTables" xlink:type="extended" id="i83dc76196b034a8b867c2785cbdc1681_PropertyPlantandEquipmentnetTables"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails" xlink:type="simple" xlink:href="form-20210327.xsd#PropertyPlantandEquipmentnetDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails" xlink:type="extended" id="id28970fadfad4aac84e0b84bc099910e_PropertyPlantandEquipmentnetDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3e86171e-ddf6-445c-b297-fd3dd5d16e33" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_5d2fe198-d4cc-43ee-b934-4256489c96d5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3e86171e-ddf6-445c-b297-fd3dd5d16e33" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_5d2fe198-d4cc-43ee-b934-4256489c96d5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_8e4189ff-4dd5-4b85-a24a-b77cfaf2fa33" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3e86171e-ddf6-445c-b297-fd3dd5d16e33" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_8e4189ff-4dd5-4b85-a24a-b77cfaf2fa33" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress_a2da2da5-fee0-4bcc-80bf-d68f41ca4a34" xlink:href="form-20210327.xsd#form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3e86171e-ddf6-445c-b297-fd3dd5d16e33" xlink:to="loc_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress_a2da2da5-fee0-4bcc-80bf-d68f41ca4a34" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConstructionInProgressGross_744e81b0-0237-48d5-a12d-7a247664f0c5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConstructionInProgressGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3e86171e-ddf6-445c-b297-fd3dd5d16e33" xlink:to="loc_us-gaap_ConstructionInProgressGross_744e81b0-0237-48d5-a12d-7a247664f0c5" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_46b230d7-06b1-4a93-898b-81109ede9456" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3e86171e-ddf6-445c-b297-fd3dd5d16e33" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_46b230d7-06b1-4a93-898b-81109ede9456" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2a3e58e9-f318-4bc9-9b30-218748c41bbe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3e86171e-ddf6-445c-b297-fd3dd5d16e33" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2a3e58e9-f318-4bc9-9b30-218748c41bbe" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_62127dd0-0593-4801-acb0-a2abc1e549a2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2a3e58e9-f318-4bc9-9b30-218748c41bbe" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_62127dd0-0593-4801-acb0-a2abc1e549a2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_62127dd0-0593-4801-acb0-a2abc1e549a2_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_62127dd0-0593-4801-acb0-a2abc1e549a2" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_62127dd0-0593-4801-acb0-a2abc1e549a2_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_7509f6eb-75a6-4057-b6ef-ecc20c0ac11c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_62127dd0-0593-4801-acb0-a2abc1e549a2" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_7509f6eb-75a6-4057-b6ef-ecc20c0ac11c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandMember_b1f76135-4f3a-415c-985a-1832baf17324" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LandMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_7509f6eb-75a6-4057-b6ef-ecc20c0ac11c" xlink:to="loc_us-gaap_LandMember_b1f76135-4f3a-415c-985a-1832baf17324" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquipmentMember_b73ea93a-cbad-412b-a4a7-4177d89a9e98" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquipmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_7509f6eb-75a6-4057-b6ef-ecc20c0ac11c" xlink:to="loc_us-gaap_EquipmentMember_b73ea93a-cbad-412b-a4a7-4177d89a9e98" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComputerEquipmentMember_66d2f865-e34d-4048-b8d2-52ecc513b937" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ComputerEquipmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_7509f6eb-75a6-4057-b6ef-ecc20c0ac11c" xlink:to="loc_us-gaap_ComputerEquipmentMember_66d2f865-e34d-4048-b8d2-52ecc513b937" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_92793e18-5d22-4460-9e92-025184220604" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_7509f6eb-75a6-4057-b6ef-ecc20c0ac11c" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_92793e18-5d22-4460-9e92-025184220604" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseholdImprovementsMember_ed7d58f8-b7ad-40ef-a998-924d1bce6942" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseholdImprovementsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_7509f6eb-75a6-4057-b6ef-ecc20c0ac11c" xlink:to="loc_us-gaap_LeaseholdImprovementsMember_ed7d58f8-b7ad-40ef-a998-924d1bce6942" xlink:type="arc" order="4"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensation" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensation"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensation" xlink:type="extended" id="i61131fdaca0641d28a8eaa46ff264a8f_StockholdersEquityandStockBasedCompensation"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationTables" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationTables"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationTables" xlink:type="extended" id="ia26475f4fca94375bdfce3a883652a0f_StockholdersEquityandStockBasedCompensationTables"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationAdditionalInformationDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails" xlink:type="extended" id="i0de455ddbf0447cea1528b035584323a_StockholdersEquityandStockBasedCompensationAdditionalInformationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6d3e1482-e172-426d-b87b-58bbbfdef181" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_cb85ad54-04a8-4f86-bdb9-ec436e6f29cc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6d3e1482-e172-426d-b87b-58bbbfdef181" xlink:to="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_cb85ad54-04a8-4f86-bdb9-ec436e6f29cc" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired_b10f6ff1-a592-465d-9a48-22ff05d7e016" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockSharesAcquired"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6d3e1482-e172-426d-b87b-58bbbfdef181" xlink:to="loc_us-gaap_TreasuryStockSharesAcquired_b10f6ff1-a592-465d-9a48-22ff05d7e016" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_55027edb-0a37-4a57-9626-bf59fbfd93b6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6d3e1482-e172-426d-b87b-58bbbfdef181" xlink:to="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_55027edb-0a37-4a57-9626-bf59fbfd93b6" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_58919eb1-593a-4b7b-8e24-5695dc8de6af" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6d3e1482-e172-426d-b87b-58bbbfdef181" xlink:to="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_58919eb1-593a-4b7b-8e24-5695dc8de6af" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_9c0d637d-a2d6-4ecc-9bc0-cc7574851254" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6d3e1482-e172-426d-b87b-58bbbfdef181" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_9c0d637d-a2d6-4ecc-9bc0-cc7574851254" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c4ae6a22-bcc9-442e-8d60-da3f54016bba" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6d3e1482-e172-426d-b87b-58bbbfdef181" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c4ae6a22-bcc9-442e-8d60-da3f54016bba" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_420d0c1f-831f-4d53-887f-20da854f8e91" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PlanNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c4ae6a22-bcc9-442e-8d60-da3f54016bba" xlink:to="loc_us-gaap_PlanNameAxis_420d0c1f-831f-4d53-887f-20da854f8e91" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_420d0c1f-831f-4d53-887f-20da854f8e91_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PlanNameAxis_420d0c1f-831f-4d53-887f-20da854f8e91" xlink:to="loc_us-gaap_PlanNameDomain_420d0c1f-831f-4d53-887f-20da854f8e91_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_893e0fbc-24cf-4f7a-9d1c-fd795ccd8cd2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PlanNameAxis_420d0c1f-831f-4d53-887f-20da854f8e91" xlink:to="loc_us-gaap_PlanNameDomain_893e0fbc-24cf-4f7a-9d1c-fd795ccd8cd2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_EquityIncentivePlanMember_5fa888f5-bf67-4253-83b7-7d1e6bac2131" xlink:href="form-20210327.xsd#form_EquityIncentivePlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_893e0fbc-24cf-4f7a-9d1c-fd795ccd8cd2" xlink:to="loc_form_EquityIncentivePlanMember_5fa888f5-bf67-4253-83b7-7d1e6bac2131" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_fc0c5dac-9c9b-4ac9-80a6-ef0c2f62bd95" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c4ae6a22-bcc9-442e-8d60-da3f54016bba" xlink:to="loc_us-gaap_AwardTypeAxis_fc0c5dac-9c9b-4ac9-80a6-ef0c2f62bd95" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_fc0c5dac-9c9b-4ac9-80a6-ef0c2f62bd95_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_fc0c5dac-9c9b-4ac9-80a6-ef0c2f62bd95" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_fc0c5dac-9c9b-4ac9-80a6-ef0c2f62bd95_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2d60ad6d-6cb1-40a0-a229-2a319a426e13" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_fc0c5dac-9c9b-4ac9-80a6-ef0c2f62bd95" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2d60ad6d-6cb1-40a0-a229-2a319a426e13" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_PerformanceRestrictedStockUnitsMember_4e425ea7-167c-492c-805c-8d027c9c0dd7" xlink:href="form-20210327.xsd#form_PerformanceRestrictedStockUnitsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2d60ad6d-6cb1-40a0-a229-2a319a426e13" xlink:to="loc_form_PerformanceRestrictedStockUnitsMember_4e425ea7-167c-492c-805c-8d027c9c0dd7" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementClassOfStockAxis_5c9b0a46-5742-4ab8-af86-6620a2018721" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementClassOfStockAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c4ae6a22-bcc9-442e-8d60-da3f54016bba" xlink:to="loc_us-gaap_StatementClassOfStockAxis_5c9b0a46-5742-4ab8-af86-6620a2018721" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_5c9b0a46-5742-4ab8-af86-6620a2018721_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementClassOfStockAxis_5c9b0a46-5742-4ab8-af86-6620a2018721" xlink:to="loc_us-gaap_ClassOfStockDomain_5c9b0a46-5742-4ab8-af86-6620a2018721_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_c1c2b976-8fea-4bc6-8515-827f5715d360" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementClassOfStockAxis_5c9b0a46-5742-4ab8-af86-6620a2018721" xlink:to="loc_us-gaap_ClassOfStockDomain_c1c2b976-8fea-4bc6-8515-827f5715d360" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_293a9a91-9de4-482f-bfb8-c85bc02e2a22" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockDomain_c1c2b976-8fea-4bc6-8515-827f5715d360" xlink:to="loc_us-gaap_CommonStockMember_293a9a91-9de4-482f-bfb8-c85bc02e2a22" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails" xlink:type="extended" id="if71c3c6dd48c469e9ef61466deb5dfc8_StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6ba9c92e-e281-4f3e-9b91-75f0905b43ef" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_08441517-3ff2-4793-bccb-c9b32e42ad8a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6ba9c92e-e281-4f3e-9b91-75f0905b43ef" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_08441517-3ff2-4793-bccb-c9b32e42ad8a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_fed9f286-1d1c-4e8a-a554-9d06a6aed1ac" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_08441517-3ff2-4793-bccb-c9b32e42ad8a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_fed9f286-1d1c-4e8a-a554-9d06a6aed1ac" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_c004d080-cc42-41d6-a94f-9b6c632abe60" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_08441517-3ff2-4793-bccb-c9b32e42ad8a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_c004d080-cc42-41d6-a94f-9b6c632abe60" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_c4b6a89c-65de-4ee7-bc47-2bc0bb0599a7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_08441517-3ff2-4793-bccb-c9b32e42ad8a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_c4b6a89c-65de-4ee7-bc47-2bc0bb0599a7" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_08a6800a-b595-4114-a613-775c947e8b84" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_08441517-3ff2-4793-bccb-c9b32e42ad8a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_08a6800a-b595-4114-a613-775c947e8b84" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_d2b318de-fb78-4c13-8e9e-b303f406eff1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_48a1fef0-84a5-4105-ba64-cdb8a9f5561c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6ba9c92e-e281-4f3e-9b91-75f0905b43ef" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_48a1fef0-84a5-4105-ba64-cdb8a9f5561c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_cf3eb291-216a-43a5-9be7-d8b4609e5cc1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_48a1fef0-84a5-4105-ba64-cdb8a9f5561c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_cf3eb291-216a-43a5-9be7-d8b4609e5cc1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_95d5eb48-e3bd-40b9-b514-1374f3aa868f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_48a1fef0-84a5-4105-ba64-cdb8a9f5561c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_95d5eb48-e3bd-40b9-b514-1374f3aa868f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_e11179ce-5929-4dc0-840b-4ec4dadd2317" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_48a1fef0-84a5-4105-ba64-cdb8a9f5561c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_e11179ce-5929-4dc0-840b-4ec4dadd2317" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_1a2ffe00-dc67-406a-8f83-c1e9bf26148a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_48a1fef0-84a5-4105-ba64-cdb8a9f5561c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_1a2ffe00-dc67-406a-8f83-c1e9bf26148a" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_ee613996-f11a-498c-b6d4-aef8a34a1b9a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a39c89-9cfd-480d-85cf-5543a38e33e6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6ba9c92e-e281-4f3e-9b91-75f0905b43ef" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a39c89-9cfd-480d-85cf-5543a38e33e6" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_37371780-9f6f-4519-ae4c-3252839caddd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PlanNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a39c89-9cfd-480d-85cf-5543a38e33e6" xlink:to="loc_us-gaap_PlanNameAxis_37371780-9f6f-4519-ae4c-3252839caddd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_37371780-9f6f-4519-ae4c-3252839caddd_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PlanNameAxis_37371780-9f6f-4519-ae4c-3252839caddd" xlink:to="loc_us-gaap_PlanNameDomain_37371780-9f6f-4519-ae4c-3252839caddd_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_df1ac478-b7e4-4d8e-8160-186ee0810db9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PlanNameAxis_37371780-9f6f-4519-ae4c-3252839caddd" xlink:to="loc_us-gaap_PlanNameDomain_df1ac478-b7e4-4d8e-8160-186ee0810db9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_EquityIncentivePlanMember_3d857bfb-4467-4bd9-ae86-ebaba76333b5" xlink:href="form-20210327.xsd#form_EquityIncentivePlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_df1ac478-b7e4-4d8e-8160-186ee0810db9" xlink:to="loc_form_EquityIncentivePlanMember_3d857bfb-4467-4bd9-ae86-ebaba76333b5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_1278b968-1109-41bc-b4ef-664570063101" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a39c89-9cfd-480d-85cf-5543a38e33e6" xlink:to="loc_us-gaap_AwardTypeAxis_1278b968-1109-41bc-b4ef-664570063101" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1278b968-1109-41bc-b4ef-664570063101_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_1278b968-1109-41bc-b4ef-664570063101" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1278b968-1109-41bc-b4ef-664570063101_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_bbbde5fa-31b4-4d11-b52f-c9a829a2a4d4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_1278b968-1109-41bc-b4ef-664570063101" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_bbbde5fa-31b4-4d11-b52f-c9a829a2a4d4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_df904d57-a0b8-45fe-a2cd-324b033836c6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_bbbde5fa-31b4-4d11-b52f-c9a829a2a4d4" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_df904d57-a0b8-45fe-a2cd-324b033836c6" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails" xlink:type="extended" id="if255813fa7e04717ac02673505f6f82f_StockholdersEquityandStockBasedCompensationStockOptionActivityDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_31070053-6889-4c67-b714-70e5fd2cf6d8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_a8e59f53-7e23-4a61-8851-fae1e45a8b90" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_31070053-6889-4c67-b714-70e5fd2cf6d8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_a8e59f53-7e23-4a61-8851-fae1e45a8b90" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_92285a24-a0ae-435b-bbaa-2fe1b9338811" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_a8e59f53-7e23-4a61-8851-fae1e45a8b90" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_92285a24-a0ae-435b-bbaa-2fe1b9338811" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_ea6fb7fd-4727-4c8e-90bf-4ecaef679167" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_a8e59f53-7e23-4a61-8851-fae1e45a8b90" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_ea6fb7fd-4727-4c8e-90bf-4ecaef679167" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_4ebbad3f-5a3b-4228-8ba3-f8b6ef67388a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber_cca54e77-fa70-4bb5-a9be-00e388420b70" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_31070053-6889-4c67-b714-70e5fd2cf6d8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber_cca54e77-fa70-4bb5-a9be-00e388420b70" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_272bfbbf-ea8f-42bd-b865-686b39882c94" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_31070053-6889-4c67-b714-70e5fd2cf6d8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_272bfbbf-ea8f-42bd-b865-686b39882c94" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_bba1273b-9834-43da-87b9-3dbd06fd3bbd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_31070053-6889-4c67-b714-70e5fd2cf6d8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_bba1273b-9834-43da-87b9-3dbd06fd3bbd" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_d3a8ff7a-0939-40e3-87bd-bf84640d9ed5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_bba1273b-9834-43da-87b9-3dbd06fd3bbd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_d3a8ff7a-0939-40e3-87bd-bf84640d9ed5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_a13058de-af5c-49ff-9ac1-4aaa8d206006" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_bba1273b-9834-43da-87b9-3dbd06fd3bbd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_a13058de-af5c-49ff-9ac1-4aaa8d206006" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_84cb3157-03e3-437b-80a0-debc677942ce" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_1ffc07a4-f4b5-481e-aa92-3f63533522c8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_31070053-6889-4c67-b714-70e5fd2cf6d8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_1ffc07a4-f4b5-481e-aa92-3f63533522c8" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_7d77ee43-d60c-4548-a4b6-857a8c0d691f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_31070053-6889-4c67-b714-70e5fd2cf6d8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_7d77ee43-d60c-4548-a4b6-857a8c0d691f" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_0d36d256-9678-4f22-922f-c51859f9c172" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_31070053-6889-4c67-b714-70e5fd2cf6d8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_0d36d256-9678-4f22-922f-c51859f9c172" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_6007ca5d-a23b-4897-b145-b068a15f1809" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_0d36d256-9678-4f22-922f-c51859f9c172" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_6007ca5d-a23b-4897-b145-b068a15f1809" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_057a5789-f763-4754-bf09-ae58c3060b4b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_0d36d256-9678-4f22-922f-c51859f9c172" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_057a5789-f763-4754-bf09-ae58c3060b4b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_4c942390-1f44-48b5-bac4-eea00b36779f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_0d36d256-9678-4f22-922f-c51859f9c172" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_4c942390-1f44-48b5-bac4-eea00b36779f" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_af80afec-2dc7-48f2-b997-020a4a385a38" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_0d36d256-9678-4f22-922f-c51859f9c172" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_af80afec-2dc7-48f2-b997-020a4a385a38" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_2bd8038d-cb6b-40bc-83e0-d73290152e80" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_0d36d256-9678-4f22-922f-c51859f9c172" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_2bd8038d-cb6b-40bc-83e0-d73290152e80" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_5de3696c-49fa-442c-8ccf-3a107269e971" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_0d36d256-9678-4f22-922f-c51859f9c172" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_5de3696c-49fa-442c-8ccf-3a107269e971" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0c0fef00-97d4-4d06-93e5-a9100600c972" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_31070053-6889-4c67-b714-70e5fd2cf6d8" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0c0fef00-97d4-4d06-93e5-a9100600c972" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_26830709-eddc-4b8c-9a9d-11ebe2b23127" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PlanNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0c0fef00-97d4-4d06-93e5-a9100600c972" xlink:to="loc_us-gaap_PlanNameAxis_26830709-eddc-4b8c-9a9d-11ebe2b23127" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_26830709-eddc-4b8c-9a9d-11ebe2b23127_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PlanNameAxis_26830709-eddc-4b8c-9a9d-11ebe2b23127" xlink:to="loc_us-gaap_PlanNameDomain_26830709-eddc-4b8c-9a9d-11ebe2b23127_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_0ccac15b-7fc2-4889-a5a1-7d62bdcbcdf5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PlanNameAxis_26830709-eddc-4b8c-9a9d-11ebe2b23127" xlink:to="loc_us-gaap_PlanNameDomain_0ccac15b-7fc2-4889-a5a1-7d62bdcbcdf5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_EquityIncentivePlanMember_6b48fe84-3ee7-4adc-83be-2668fbfd8f6a" xlink:href="form-20210327.xsd#form_EquityIncentivePlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_0ccac15b-7fc2-4889-a5a1-7d62bdcbcdf5" xlink:to="loc_form_EquityIncentivePlanMember_6b48fe84-3ee7-4adc-83be-2668fbfd8f6a" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationESPPActivityDetails" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationESPPActivityDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationESPPActivityDetails" xlink:type="extended" id="i2382834392774ccb9cca35d0713b254d_StockholdersEquityandStockBasedCompensationESPPActivityDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_9f002484-425f-4c81-8145-40b47501d706" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_1f845fdd-48f4-44d1-b26f-63b1446c919d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_9f002484-425f-4c81-8145-40b47501d706" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_1f845fdd-48f4-44d1-b26f-63b1446c919d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_eaaa4e24-b598-4b4c-abfa-cded4ddcf4a3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_9f002484-425f-4c81-8145-40b47501d706" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_eaaa4e24-b598-4b4c-abfa-cded4ddcf4a3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock_659736d7-5c4a-46b1-9026-5d09a9a11237" xlink:href="form-20210327.xsd#form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_9f002484-425f-4c81-8145-40b47501d706" xlink:to="loc_form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock_659736d7-5c4a-46b1-9026-5d09a9a11237" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_923a0a2f-4ead-45d4-ad75-49b7c744b619" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_9f002484-425f-4c81-8145-40b47501d706" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_923a0a2f-4ead-45d4-ad75-49b7c744b619" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_794b8bd5-41ee-4013-abf2-e53cd088a555" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_923a0a2f-4ead-45d4-ad75-49b7c744b619" xlink:to="loc_us-gaap_AwardTypeAxis_794b8bd5-41ee-4013-abf2-e53cd088a555" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_794b8bd5-41ee-4013-abf2-e53cd088a555_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_794b8bd5-41ee-4013-abf2-e53cd088a555" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_794b8bd5-41ee-4013-abf2-e53cd088a555_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8e3f5be9-396c-4ad9-bb56-c08d4815a5fb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_794b8bd5-41ee-4013-abf2-e53cd088a555" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8e3f5be9-396c-4ad9-bb56-c08d4815a5fb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockMember_b786fc44-70de-4442-baeb-cbe360d41546" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8e3f5be9-396c-4ad9-bb56-c08d4815a5fb" xlink:to="loc_us-gaap_EmployeeStockMember_b786fc44-70de-4442-baeb-cbe360d41546" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails" xlink:type="extended" id="i575cda6bdd6f4d15bc9aa72ef1e0d517_StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_5b228cc4-d66f-4889-a5a3-e21d64f8edc9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_2ca50100-f82b-40d7-bb8a-736f2b04047a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_5b228cc4-d66f-4889-a5a3-e21d64f8edc9" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_2ca50100-f82b-40d7-bb8a-736f2b04047a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_ac3323f9-99ea-4602-9ef3-9f92180da781" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_5b228cc4-d66f-4889-a5a3-e21d64f8edc9" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_ac3323f9-99ea-4602-9ef3-9f92180da781" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_d484b9ab-eeac-434e-8807-6fd9f8fdbe8e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_ac3323f9-99ea-4602-9ef3-9f92180da781" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_d484b9ab-eeac-434e-8807-6fd9f8fdbe8e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_d484b9ab-eeac-434e-8807-6fd9f8fdbe8e_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_d484b9ab-eeac-434e-8807-6fd9f8fdbe8e" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_d484b9ab-eeac-434e-8807-6fd9f8fdbe8e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_754a4521-1198-4efe-84c9-c85cd2fea4f5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_d484b9ab-eeac-434e-8807-6fd9f8fdbe8e" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_754a4521-1198-4efe-84c9-c85cd2fea4f5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_d0e438da-cdfe-475b-b161-2da015fb21d1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfSalesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_754a4521-1198-4efe-84c9-c85cd2fea4f5" xlink:to="loc_us-gaap_CostOfSalesMember_d0e438da-cdfe-475b-b161-2da015fb21d1" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_b68c187b-210f-468f-b5e9-76ab11c8eef2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_754a4521-1198-4efe-84c9-c85cd2fea4f5" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_b68c187b-210f-468f-b5e9-76ab11c8eef2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_70e9754a-32a3-40c1-b4b7-534ff2523da4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_754a4521-1198-4efe-84c9-c85cd2fea4f5" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_70e9754a-32a3-40c1-b4b7-534ff2523da4" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails" xlink:type="extended" id="i30899cf6d23b44ba819cf97f04e2f262_StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_ee0dda4d-de1f-4cb3-92c1-1a7981925ef0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_8ae6a5ea-d234-4677-a03d-54f514c58bff" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_ee0dda4d-de1f-4cb3-92c1-1a7981925ef0" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_8ae6a5ea-d234-4677-a03d-54f514c58bff" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_a322728d-01e3-4d7f-b88a-64cd7a59ead6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_ee0dda4d-de1f-4cb3-92c1-1a7981925ef0" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_a322728d-01e3-4d7f-b88a-64cd7a59ead6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_55c657fd-fe89-4532-b022-3f070c9b2e7b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_ee0dda4d-de1f-4cb3-92c1-1a7981925ef0" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_55c657fd-fe89-4532-b022-3f070c9b2e7b" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_97c80471-2653-4d60-aa4a-1d7cdce02226" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_55c657fd-fe89-4532-b022-3f070c9b2e7b" xlink:to="loc_us-gaap_AwardTypeAxis_97c80471-2653-4d60-aa4a-1d7cdce02226" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_97c80471-2653-4d60-aa4a-1d7cdce02226_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_97c80471-2653-4d60-aa4a-1d7cdce02226" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_97c80471-2653-4d60-aa4a-1d7cdce02226_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_26f1e407-79a3-422b-ab58-90cc49672e8f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_97c80471-2653-4d60-aa4a-1d7cdce02226" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_26f1e407-79a3-422b-ab58-90cc49672e8f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember_530357ce-486a-48d2-9046-9b7210fb42dd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_26f1e407-79a3-422b-ab58-90cc49672e8f" xlink:to="loc_us-gaap_RestrictedStockMember_530357ce-486a-48d2-9046-9b7210fb42dd" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_PerformanceRestrictedStockUnitsMember_9916fdaf-fed7-464b-9d14-5807f0a22812" xlink:href="form-20210327.xsd#form_PerformanceRestrictedStockUnitsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_26f1e407-79a3-422b-ab58-90cc49672e8f" xlink:to="loc_form_PerformanceRestrictedStockUnitsMember_9916fdaf-fed7-464b-9d14-5807f0a22812" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockMember_56e052db-6eaf-47d1-ab0a-8726f3bfe890" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_26f1e407-79a3-422b-ab58-90cc49672e8f" xlink:to="loc_us-gaap_EmployeeStockMember_56e052db-6eaf-47d1-ab0a-8726f3bfe890" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/NetIncomeperShare" xlink:type="simple" xlink:href="form-20210327.xsd#NetIncomeperShare"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/NetIncomeperShare" xlink:type="extended" id="i469ed3b84dc148c6a7f86a3f64e32009_NetIncomeperShare"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/NetIncomeperShareTables" xlink:type="simple" xlink:href="form-20210327.xsd#NetIncomeperShareTables"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/NetIncomeperShareTables" xlink:type="extended" id="i48d01e2a62d94b38b03eac48bd463e5f_NetIncomeperShareTables"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/NetIncomeperShareDetails" xlink:type="simple" xlink:href="form-20210327.xsd#NetIncomeperShareDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/NetIncomeperShareDetails" xlink:type="extended" id="ifaa89e4f943246919ec67d817b35e968_NetIncomeperShareDetails"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/CommitmentsandContingencies" xlink:type="simple" xlink:href="form-20210327.xsd#CommitmentsandContingencies"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/CommitmentsandContingencies" xlink:type="extended" id="i1c7b614b8fb844829dfee63ba02921ad_CommitmentsandContingencies"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/Leases" xlink:type="simple" xlink:href="form-20210327.xsd#Leases"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/Leases" xlink:type="extended" id="i6d834fc0fb4a4e41be058b69aa52dbeb_Leases"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/LeasesTables" xlink:type="simple" xlink:href="form-20210327.xsd#LeasesTables"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/LeasesTables" xlink:type="extended" id="i882eb805c212441490b31e4c8804bc08_LeasesTables"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/LeasesNarrativeDetails" xlink:type="simple" xlink:href="form-20210327.xsd#LeasesNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/LeasesNarrativeDetails" xlink:type="extended" id="iee71486cbad24850a4f17483516a5d09_LeasesNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionLineItems_72c9abbc-f8b1-4daa-b064-3542be140ef7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeLeaseDescriptionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseTermOfContract_90c89675-d4aa-4bc7-ae96-46177810bf38" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseTermOfContract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_72c9abbc-f8b1-4daa-b064-3542be140ef7" xlink:to="loc_us-gaap_LesseeOperatingLeaseTermOfContract_90c89675-d4aa-4bc7-ae96-46177810bf38" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseRenewalTerm_b5cc3ee4-f2c1-473b-b311-8624226d4105" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_72c9abbc-f8b1-4daa-b064-3542be140ef7" xlink:to="loc_us-gaap_LesseeOperatingLeaseRenewalTerm_b5cc3ee4-f2c1-473b-b311-8624226d4105" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_b5743cfe-abfe-4da4-a252-69084d528a83" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_72c9abbc-f8b1-4daa-b064-3542be140ef7" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_b5743cfe-abfe-4da4-a252-69084d528a83" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_e4815705-ac41-4ec0-a9b3-fd7c5ec2610f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_72c9abbc-f8b1-4daa-b064-3542be140ef7" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_e4815705-ac41-4ec0-a9b3-fd7c5ec2610f" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionTable_99ae3444-5057-462c-9d8d-b3054044b561" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeLeaseDescriptionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_72c9abbc-f8b1-4daa-b064-3542be140ef7" xlink:to="loc_us-gaap_LesseeLeaseDescriptionTable_99ae3444-5057-462c-9d8d-b3054044b561" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_19b1a8cb-a5bd-49ec-b614-68aeeadf7879" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_99ae3444-5057-462c-9d8d-b3054044b561" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_19b1a8cb-a5bd-49ec-b614-68aeeadf7879" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_19b1a8cb-a5bd-49ec-b614-68aeeadf7879_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_19b1a8cb-a5bd-49ec-b614-68aeeadf7879" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_19b1a8cb-a5bd-49ec-b614-68aeeadf7879_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_695fe421-8eb3-4cc8-a48f-0a10ea000307" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_19b1a8cb-a5bd-49ec-b614-68aeeadf7879" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_695fe421-8eb3-4cc8-a48f-0a10ea000307" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AutomobilesMember_d61ff8c8-3a98-49c6-8671-f5ba410ae326" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AutomobilesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_695fe421-8eb3-4cc8-a48f-0a10ea000307" xlink:to="loc_us-gaap_AutomobilesMember_d61ff8c8-3a98-49c6-8671-f5ba410ae326" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_6b01bee1-7b17-41bd-ae9d-7a455489ba2c" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_99ae3444-5057-462c-9d8d-b3054044b561" xlink:to="loc_srt_RangeAxis_6b01bee1-7b17-41bd-ae9d-7a455489ba2c" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_6b01bee1-7b17-41bd-ae9d-7a455489ba2c_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_6b01bee1-7b17-41bd-ae9d-7a455489ba2c" xlink:to="loc_srt_RangeMember_6b01bee1-7b17-41bd-ae9d-7a455489ba2c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_bcb009ec-7a90-4449-ab68-366d0ddf57b5" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_6b01bee1-7b17-41bd-ae9d-7a455489ba2c" xlink:to="loc_srt_RangeMember_bcb009ec-7a90-4449-ab68-366d0ddf57b5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_ecf1ad12-16da-40e3-9a77-594509915e58" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_bcb009ec-7a90-4449-ab68-366d0ddf57b5" xlink:to="loc_srt_MinimumMember_ecf1ad12-16da-40e3-9a77-594509915e58" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_0792e582-55ba-44df-9eaa-e237eefb90dd" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_bcb009ec-7a90-4449-ab68-366d0ddf57b5" xlink:to="loc_srt_MaximumMember_0792e582-55ba-44df-9eaa-e237eefb90dd" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/LeasesComponentsofLeaseExpenseDetails" xlink:type="simple" xlink:href="form-20210327.xsd#LeasesComponentsofLeaseExpenseDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/LeasesComponentsofLeaseExpenseDetails" xlink:type="extended" id="ib19ee167287145adb708d58b69c5adf1_LeasesComponentsofLeaseExpenseDetails"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails" xlink:type="simple" xlink:href="form-20210327.xsd#LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails" xlink:type="extended" id="ifc2700f9fe5a4d599ed1b18aa7aefd15_LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/Revenue" xlink:type="simple" xlink:href="form-20210327.xsd#Revenue"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/Revenue" xlink:type="extended" id="ifd1a88d410d74b0eb00d294681713f69_Revenue"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/RevenueAdditionalInformationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#RevenueAdditionalInformationDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/RevenueAdditionalInformationDetails" xlink:type="extended" id="i50539a6565914bc19cdf7ae432107dee_RevenueAdditionalInformationDetails"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#RevenueRemainingPerformanceObligationDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails" xlink:type="extended" id="i06f00eb83af44de585a8a7c093261891_RevenueRemainingPerformanceObligationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_4205b9dc-390a-41a6-98cc-1c4adc322104" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage_ce027c43-b3f9-4546-8cf4-92474b7a3e4a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_4205b9dc-390a-41a6-98cc-1c4adc322104" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage_ce027c43-b3f9-4546-8cf4-92474b7a3e4a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_1ac36cb4-3819-487c-b46c-396c307e1a99" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_4205b9dc-390a-41a6-98cc-1c4adc322104" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_1ac36cb4-3819-487c-b46c-396c307e1a99" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_0880a65c-2039-42ba-b1ae-3386249fd269" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_4205b9dc-390a-41a6-98cc-1c4adc322104" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_0880a65c-2039-42ba-b1ae-3386249fd269" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_f12b5510-b550-4dda-9057-c8046a630faf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_0880a65c-2039-42ba-b1ae-3386249fd269" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_f12b5510-b550-4dda-9057-c8046a630faf" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails_1" xlink:type="simple" xlink:href="form-20210327.xsd#RevenueRemainingPerformanceObligationDetails_1"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails_1" xlink:type="extended" id="i220e8beb586b47f786def71397d8d346_RevenueRemainingPerformanceObligationDetails_1">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_4205b9dc-390a-41a6-98cc-1c4adc322104" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage_ce027c43-b3f9-4546-8cf4-92474b7a3e4a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_4205b9dc-390a-41a6-98cc-1c4adc322104" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage_ce027c43-b3f9-4546-8cf4-92474b7a3e4a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_1ac36cb4-3819-487c-b46c-396c307e1a99" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_4205b9dc-390a-41a6-98cc-1c4adc322104" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_1ac36cb4-3819-487c-b46c-396c307e1a99" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_0880a65c-2039-42ba-b1ae-3386249fd269" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_4205b9dc-390a-41a6-98cc-1c4adc322104" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_0880a65c-2039-42ba-b1ae-3386249fd269" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformation" xlink:type="simple" xlink:href="form-20210327.xsd#OperatingSegmentsandEnterpriseWideInformation"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformation" xlink:type="extended" id="ie2001b52255243b18ff5f19225d5bae6_OperatingSegmentsandEnterpriseWideInformation"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationTables" xlink:type="simple" xlink:href="form-20210327.xsd#OperatingSegmentsandEnterpriseWideInformationTables"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationTables" xlink:type="extended" id="i94daf94be1214d5987a813325ea9078b_OperatingSegmentsandEnterpriseWideInformationTables"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationAdditionalInformationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#OperatingSegmentsandEnterpriseWideInformationAdditionalInformationDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationAdditionalInformationDetails" xlink:type="extended" id="ie0ab12c3e1774d5e932c116635d12c81_OperatingSegmentsandEnterpriseWideInformationAdditionalInformationDetails"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails" xlink:type="simple" xlink:href="form-20210327.xsd#OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails" xlink:type="extended" id="i6b6262ff92b448299492a36724f54232_OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_25fa16d0-e70c-4f8b-b425-602cef71047a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_64d43a7f-2126-4eb9-8a40-e1a6b5074815" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_25fa16d0-e70c-4f8b-b425-602cef71047a" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_64d43a7f-2126-4eb9-8a40-e1a6b5074815" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_940797f9-66df-43c3-a1ba-b2d517a5a5f3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GrossProfit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_25fa16d0-e70c-4f8b-b425-602cef71047a" xlink:to="loc_us-gaap_GrossProfit_940797f9-66df-43c3-a1ba-b2d517a5a5f3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_GrossMarginPercent_9a8ca0ee-b448-4336-90df-6b03a05dd7fe" xlink:href="form-20210327.xsd#form_GrossMarginPercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_25fa16d0-e70c-4f8b-b425-602cef71047a" xlink:to="loc_form_GrossMarginPercent_9a8ca0ee-b448-4336-90df-6b03a05dd7fe" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_907686b1-87c5-4137-8c3c-a8f1b7cef637" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_25fa16d0-e70c-4f8b-b425-602cef71047a" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_907686b1-87c5-4137-8c3c-a8f1b7cef637" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_843fb823-bc68-4e7d-b389-962ab7b79eec" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_907686b1-87c5-4137-8c3c-a8f1b7cef637" xlink:to="loc_srt_ConsolidationItemsAxis_843fb823-bc68-4e7d-b389-962ab7b79eec" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_843fb823-bc68-4e7d-b389-962ab7b79eec_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_843fb823-bc68-4e7d-b389-962ab7b79eec" xlink:to="loc_srt_ConsolidationItemsDomain_843fb823-bc68-4e7d-b389-962ab7b79eec_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_f0ff40d5-129a-4de0-baf8-d8f17dbefebf" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_843fb823-bc68-4e7d-b389-962ab7b79eec" xlink:to="loc_srt_ConsolidationItemsDomain_f0ff40d5-129a-4de0-baf8-d8f17dbefebf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_e4cc4015-24df-4bca-b244-f7d5fc77caaa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_f0ff40d5-129a-4de0-baf8-d8f17dbefebf" xlink:to="loc_us-gaap_OperatingSegmentsMember_e4cc4015-24df-4bca-b244-f7d5fc77caaa" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_290198cf-85db-4d5b-bf1a-ea4996ba0ccd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_907686b1-87c5-4137-8c3c-a8f1b7cef637" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_290198cf-85db-4d5b-bf1a-ea4996ba0ccd" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_290198cf-85db-4d5b-bf1a-ea4996ba0ccd_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_290198cf-85db-4d5b-bf1a-ea4996ba0ccd" xlink:to="loc_us-gaap_SegmentDomain_290198cf-85db-4d5b-bf1a-ea4996ba0ccd_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_9bb90664-117b-4731-a769-bc10ad75a823" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_290198cf-85db-4d5b-bf1a-ea4996ba0ccd" xlink:to="loc_us-gaap_SegmentDomain_9bb90664-117b-4731-a769-bc10ad75a823" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_ProbeCardsSegmentMember_f279b776-2453-4fec-b4d2-0c9d1b664803" xlink:href="form-20210327.xsd#form_ProbeCardsSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_9bb90664-117b-4731-a769-bc10ad75a823" xlink:to="loc_form_ProbeCardsSegmentMember_f279b776-2453-4fec-b4d2-0c9d1b664803" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_SystemsSegmentMember_81b1a536-2d9d-4747-93ed-81d77ac7d046" xlink:href="form-20210327.xsd#form_SystemsSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_9bb90664-117b-4731-a769-bc10ad75a823" xlink:to="loc_form_SystemsSegmentMember_81b1a536-2d9d-4747-93ed-81d77ac7d046" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateAndOtherMember_2426d5c6-fe3a-4f1e-9af0-94e60bd5ef7c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CorporateAndOtherMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_9bb90664-117b-4731-a769-bc10ad75a823" xlink:to="loc_us-gaap_CorporateAndOtherMember_2426d5c6-fe3a-4f1e-9af0-94e60bd5ef7c" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails" xlink:type="simple" xlink:href="form-20210327.xsd#OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"/>
  <link:definitionLink xlink:role="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails" xlink:type="extended" id="i94d986269d93478a91873af9e20e9f97_OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_e7a59dd4-f8c3-48d2-a733-ce7cc3b8d93f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_95ea39f9-70a1-4646-bfbc-eaa39f7b8bac" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_e7a59dd4-f8c3-48d2-a733-ce7cc3b8d93f" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_95ea39f9-70a1-4646-bfbc-eaa39f7b8bac" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_9f31152a-e557-40c7-ad03-e4f0c4d1ac78" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_e7a59dd4-f8c3-48d2-a733-ce7cc3b8d93f" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_9f31152a-e557-40c7-ad03-e4f0c4d1ac78" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_210adff4-0389-4416-b638-b510db7345c2" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductOrServiceAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_9f31152a-e557-40c7-ad03-e4f0c4d1ac78" xlink:to="loc_srt_ProductOrServiceAxis_210adff4-0389-4416-b638-b510db7345c2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_210adff4-0389-4416-b638-b510db7345c2_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_210adff4-0389-4416-b638-b510db7345c2" xlink:to="loc_srt_ProductsAndServicesDomain_210adff4-0389-4416-b638-b510db7345c2_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_92eaa0c8-8ae5-45fc-87c3-c6d88641416f" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_210adff4-0389-4416-b638-b510db7345c2" xlink:to="loc_srt_ProductsAndServicesDomain_92eaa0c8-8ae5-45fc-87c3-c6d88641416f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_FoundryLogicProductGroupMember_9f98be24-d213-4821-a313-c986f192c958" xlink:href="form-20210327.xsd#form_FoundryLogicProductGroupMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_92eaa0c8-8ae5-45fc-87c3-c6d88641416f" xlink:to="loc_form_FoundryLogicProductGroupMember_9f98be24-d213-4821-a313-c986f192c958" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_DRAMProductGroupMember_b552746b-d222-449b-9afb-e5c60c7a935d" xlink:href="form-20210327.xsd#form_DRAMProductGroupMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_92eaa0c8-8ae5-45fc-87c3-c6d88641416f" xlink:to="loc_form_DRAMProductGroupMember_b552746b-d222-449b-9afb-e5c60c7a935d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_FlashProductGroupMember_1d73a98b-bf5a-4803-91a5-9ff8419551f9" xlink:href="form-20210327.xsd#form_FlashProductGroupMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_92eaa0c8-8ae5-45fc-87c3-c6d88641416f" xlink:to="loc_form_FlashProductGroupMember_1d73a98b-bf5a-4803-91a5-9ff8419551f9" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_SystemsProductGroupMember_16d8f698-c43f-4834-819d-46787f733e3a" xlink:href="form-20210327.xsd#form_SystemsProductGroupMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_92eaa0c8-8ae5-45fc-87c3-c6d88641416f" xlink:to="loc_form_SystemsProductGroupMember_16d8f698-c43f-4834-819d-46787f733e3a" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_dc231c71-f4f4-4560-958f-04789491ae67" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_9f31152a-e557-40c7-ad03-e4f0c4d1ac78" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_dc231c71-f4f4-4560-958f-04789491ae67" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_dc231c71-f4f4-4560-958f-04789491ae67_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_dc231c71-f4f4-4560-958f-04789491ae67" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_dc231c71-f4f4-4560-958f-04789491ae67_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_4a98061f-8261-4665-86f5-42419d368f09" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_dc231c71-f4f4-4560-958f-04789491ae67" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_4a98061f-8261-4665-86f5-42419d368f09" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransferredAtPointInTimeMember_67945f43-11e1-4dde-8d8f-dee7bf826ac3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TransferredAtPointInTimeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_4a98061f-8261-4665-86f5-42419d368f09" xlink:to="loc_us-gaap_TransferredAtPointInTimeMember_67945f43-11e1-4dde-8d8f-dee7bf826ac3" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransferredOverTimeMember_09947658-5723-4c55-aa25-f418d327ae20" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TransferredOverTimeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_4a98061f-8261-4665-86f5-42419d368f09" xlink:to="loc_us-gaap_TransferredOverTimeMember_09947658-5723-4c55-aa25-f418d327ae20" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_03138366-dc40-4682-9b4c-719122bd3925" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_StatementGeographicalAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_9f31152a-e557-40c7-ad03-e4f0c4d1ac78" xlink:to="loc_srt_StatementGeographicalAxis_03138366-dc40-4682-9b4c-719122bd3925" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_03138366-dc40-4682-9b4c-719122bd3925_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_SegmentGeographicalDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementGeographicalAxis_03138366-dc40-4682-9b4c-719122bd3925" xlink:to="loc_srt_SegmentGeographicalDomain_03138366-dc40-4682-9b4c-719122bd3925_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_SegmentGeographicalDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementGeographicalAxis_03138366-dc40-4682-9b4c-719122bd3925" xlink:to="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_TW_aa0dec16-21cb-4c7d-833c-3e06e10d55c9" xlink:href="https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd#country_TW"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:to="loc_country_TW_aa0dec16-21cb-4c7d-833c-3e06e10d55c9" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_CN_85904d22-64bc-4aff-897d-c8a507fbcd4a" xlink:href="https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd#country_CN"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:to="loc_country_CN_85904d22-64bc-4aff-897d-c8a507fbcd4a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_US_bf243b86-39fa-4ab2-ae7d-dd06d67d6a9b" xlink:href="https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd#country_US"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:to="loc_country_US_bf243b86-39fa-4ab2-ae7d-dd06d67d6a9b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AsiaPacificMember_56561062-6784-47d7-9096-a1745c8050a4" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_AsiaPacificMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:to="loc_srt_AsiaPacificMember_56561062-6784-47d7-9096-a1745c8050a4" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_KR_670955fe-3471-483b-bfea-109edacc8d80" xlink:href="https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd#country_KR"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:to="loc_country_KR_670955fe-3471-483b-bfea-109edacc8d80" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EuropeMember_78e64671-2d16-42b7-b7f2-842036ebde5f" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_EuropeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:to="loc_srt_EuropeMember_78e64671-2d16-42b7-b7f2-842036ebde5f" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_JP_c5e14069-4693-4293-a44a-0a97460da0bb" xlink:href="https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd#country_JP"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:to="loc_country_JP_c5e14069-4693-4293-a44a-0a97460da0bb" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_RestOfTheWorldMember_577eae9b-788e-45b4-8a1c-b1fb5d5cdfdf" xlink:href="form-20210327.xsd#form_RestOfTheWorldMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:to="loc_form_RestOfTheWorldMember_577eae9b-788e-45b4-8a1c-b1fb5d5cdfdf" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_89d74724-40dc-4684-a763-30ee9284221c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_9f31152a-e557-40c7-ad03-e4f0c4d1ac78" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_89d74724-40dc-4684-a763-30ee9284221c" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_89d74724-40dc-4684-a763-30ee9284221c_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_89d74724-40dc-4684-a763-30ee9284221c" xlink:to="loc_us-gaap_SegmentDomain_89d74724-40dc-4684-a763-30ee9284221c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_3dad9d54-38c8-40fb-ac6c-b2ade8597d7e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_89d74724-40dc-4684-a763-30ee9284221c" xlink:to="loc_us-gaap_SegmentDomain_3dad9d54-38c8-40fb-ac6c-b2ade8597d7e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_ProbeCardsSegmentMember_3b89d6ed-df88-423a-9b4a-a6ef92fc84be" xlink:href="form-20210327.xsd#form_ProbeCardsSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_3dad9d54-38c8-40fb-ac6c-b2ade8597d7e" xlink:to="loc_form_ProbeCardsSegmentMember_3b89d6ed-df88-423a-9b4a-a6ef92fc84be" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_SystemsSegmentMember_f3ee81e8-3c25-49c9-9941-b4e3daf9e9fa" xlink:href="form-20210327.xsd#form_SystemsSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_3dad9d54-38c8-40fb-ac6c-b2ade8597d7e" xlink:to="loc_form_SystemsSegmentMember_f3ee81e8-3c25-49c9-9941-b4e3daf9e9fa" xlink:type="arc" order="1"/>
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>8
<FILENAME>form-20210327_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2021 Workiva-->
<!--r:55eb200e-7c73-4bb5-9f15-e61280b04aa0,g:704d941e-e4b3-4657-882c-0679fd4e906c-->
<link:linkbase 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" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel"/>
  <link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_f9575ed1-80ad-465d-afaf-2c1d0ba90ee4_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Awards granted (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentType_fae6d456-04d0-423d-b5a8-9aab4dab5331_terseLabel_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Type</link:label>
    <link:label id="lab_dei_DocumentType_label_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Type</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentType"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentType" xlink:to="lab_dei_DocumentType" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_8c0b28b9-9bde-415b-9c70-cb222861ae90_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding, aggregate intrinsic value</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_1fb99d41-d62a-4a37-88d3-3ff8d0d65a6c_terseLabel_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other income (expense), net</link:label>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_label_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Nonoperating Income (Expense)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpense" xlink:to="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_3a78f078-4844-4ace-aa82-07a9f534097e_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reconciliation of Changes in Warranty Liability</link:label>
    <link:label id="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Product Warranty Liability [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_57935e0d-ee60-4598-8ded-cf371e928903_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockMember_5e301168-6e05-4d66-8971-59cbc6f69dab_terseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock</link:label>
    <link:label id="lab_us-gaap_TreasuryStockMember_label_en-US" xlink:label="lab_us-gaap_TreasuryStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockMember" xlink:to="lab_us-gaap_TreasuryStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PayablesAndAccrualsAbstract_f16cff83-055b-4ed2-a332-412839513e43_terseLabel_en-US" xlink:label="lab_us-gaap_PayablesAndAccrualsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payables and Accruals [Abstract]</link:label>
    <link:label id="lab_us-gaap_PayablesAndAccrualsAbstract_label_en-US" xlink:label="lab_us-gaap_PayablesAndAccrualsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payables and Accruals [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PayablesAndAccrualsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PayablesAndAccrualsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract" xlink:to="lab_us-gaap_PayablesAndAccrualsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_a4f38499-8fe0-4ec1-9805-3113ca5f62d3_negatedLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred tax liabilities</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementBusinessSegmentsAxis_81527111-0524-42a2-90cc-a8735fb5bba0_terseLabel_en-US" xlink:label="lab_us-gaap_StatementBusinessSegmentsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segments [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementBusinessSegmentsAxis_label_en-US" xlink:label="lab_us-gaap_StatementBusinessSegmentsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segments [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis" xlink:to="lab_us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_76fb52e9-9998-48c3-9b4a-9714cc457108_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Awards vested (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InProcessResearchAndDevelopmentMember_79969ecb-9124-4ef6-86b2-66fada99799f_terseLabel_en-US" xlink:label="lab_us-gaap_InProcessResearchAndDevelopmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">In-process research and development</link:label>
    <link:label id="lab_us-gaap_InProcessResearchAndDevelopmentMember_label_en-US" xlink:label="lab_us-gaap_InProcessResearchAndDevelopmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">In Process Research and Development [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InProcessResearchAndDevelopmentMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InProcessResearchAndDevelopmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InProcessResearchAndDevelopmentMember" xlink:to="lab_us-gaap_InProcessResearchAndDevelopmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_country_CN_567e37af-5b4c-43cf-af09-ba022bab014b_terseLabel_en-US" xlink:label="lab_country_CN" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">China</link:label>
    <link:label id="lab_country_CN_label_en-US" xlink:label="lab_country_CN" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">CHINA</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_country_CN" xlink:href="https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd#country_CN"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_CN" xlink:to="lab_country_CN" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueInputsLevel3Member_6b862573-a48e-4d4a-8514-73e8523697ba_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel3Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Level 3</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel3Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel3Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Inputs, Level 3 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel3Member" xlink:to="lab_us-gaap_FairValueInputsLevel3Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryWriteDown_bf54b2d5-3520-42a9-a11a-1d0fa9ea4690_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryWriteDown" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Provision for excess and obsolete inventories</link:label>
    <link:label id="lab_us-gaap_InventoryWriteDown_label_en-US" xlink:label="lab_us-gaap_InventoryWriteDown" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Write-down</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWriteDown" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryWriteDown"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryWriteDown" xlink:to="lab_us-gaap_InventoryWriteDown" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyDisclosureTextBlock_d876ac19-5dac-4b5c-9e8d-ae0e9b4e0d37_terseLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Warranty</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Warranty Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyDisclosureTextBlock" xlink:to="lab_us-gaap_ProductWarrantyDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeAssets_669c42f6-66d8-40d5-a06b-f9f674e4baa4_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative contracts</link:label>
    <link:label id="lab_us-gaap_DerivativeAssets_label_en-US" xlink:label="lab_us-gaap_DerivativeAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Asset</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssets" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeAssets" xlink:to="lab_us-gaap_DerivativeAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeMember_2ad7dc9d-238a-4d87-ad8e-9e49fa083168_terseLabel_en-US" xlink:label="lab_srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:label id="lab_srt_RangeMember_label_en-US" xlink:label="lab_srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeMember" xlink:to="lab_srt_RangeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_bdb883fb-7717-4163-a65b-1b3c1faf423c_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">LIABILITIES AND STOCKHOLDERS&#8217; EQUITY</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities and Equity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_c4811b6d-f84c-4ec4-8d54-9862c7e2cc37_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RisksAndUncertaintiesAbstract_0c480051-b5f2-4f14-9ae9-00a6426c7649_terseLabel_en-US" xlink:label="lab_us-gaap_RisksAndUncertaintiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Risks and Uncertainties [Abstract]</link:label>
    <link:label id="lab_us-gaap_RisksAndUncertaintiesAbstract_label_en-US" xlink:label="lab_us-gaap_RisksAndUncertaintiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Risks and Uncertainties [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RisksAndUncertaintiesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RisksAndUncertaintiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RisksAndUncertaintiesAbstract" xlink:to="lab_us-gaap_RisksAndUncertaintiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_c03fb2c8-34f6-4b5f-bc76-b8a6161e2811_terseLabel_en-US" xlink:label="lab_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Movement in Standard and Extended Product Warranty, Increase (Decrease) [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_label_en-US" xlink:label="lab_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Movement in Standard and Extended Product Warranty Accrual, Increase (Decrease) [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward" xlink:to="lab_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_cb3ae852-7532-443a-9a10-1e31ffff40e5_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred tax liabilities</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Income Tax Liabilities, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:to="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent_e6944b8e-aae0-4731-8d74-e4b52f548559_terseLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued warranty</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Warranty Accrual, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:to="lab_us-gaap_ProductWarrantyAccrualClassifiedCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_SecurityExchangeName_cdd5679a-f523-44fc-b4d1-286489975920_terseLabel_en-US" xlink:label="lab_dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Security Exchange Name</link:label>
    <link:label id="lab_dei_SecurityExchangeName_label_en-US" xlink:label="lab_dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Security Exchange Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_SecurityExchangeName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_SecurityExchangeName" xlink:to="lab_dei_SecurityExchangeName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_8d4a9d60-62bd-4d53-8780-f8bcfc32845c_terseLabel_en-US" xlink:label="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intangibles, net</link:label>
    <link:label id="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_label_en-US" xlink:label="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intangible Assets, Net (Excluding Goodwill)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:to="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_d8590ce3-e5aa-4bd8-91d8-11c392c2ffde_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating income</link:label>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_label_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Income (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingIncomeLoss" xlink:to="lab_us-gaap_OperatingIncomeLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredRevenueCurrent_51f13d03-6eb0-422b-8bd8-1185aa9f57e3_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredRevenueCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred revenue</link:label>
    <link:label id="lab_us-gaap_DeferredRevenueCurrent_label_en-US" xlink:label="lab_us-gaap_DeferredRevenueCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Revenue, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredRevenueCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredRevenueCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredRevenueCurrent" xlink:to="lab_us-gaap_DeferredRevenueCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesCurrent_a083d40f-b13c-4f07-affa-e91b9722a14a_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total current liabilities</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="lab_us-gaap_LiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember_02b14eab-2a1c-4dda-951a-eda107ab39bd_terseLabel_en-US" xlink:label="lab_us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amount of Gain or (Loss) Reclassified from Accumulated OCI into Income (Effective Portion)</link:label>
    <link:label id="lab_us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember_label_en-US" xlink:label="lab_us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reclassification out of Accumulated Other Comprehensive Income [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember" xlink:to="lab_us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TransferredOverTimeMember_d70b0879-940f-4d29-b09c-a27844d9ead8_terseLabel_en-US" xlink:label="lab_us-gaap_TransferredOverTimeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Products and services transferred over time</link:label>
    <link:label id="lab_us-gaap_TransferredOverTimeMember_label_en-US" xlink:label="lab_us-gaap_TransferredOverTimeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Transferred over Time [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransferredOverTimeMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TransferredOverTimeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TransferredOverTimeMember" xlink:to="lab_us-gaap_TransferredOverTimeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_4a7a1405-81de-4ff1-8347-16f438b57dd9_terseLabel_en-US" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prepaid expenses and other current assets</link:label>
    <link:label id="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_label_en-US" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prepaid Expense and Other Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_1c029410-7efa-4107-a765-289d584b281e_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Beginning balance (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_e977f3e9-b696-4add-aa56-3d01650d8b34_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Ending balance (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_bcf2f5c4-bced-4eb0-ad3c-9b63d84628aa_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Business Acquisitions, by Acquisition [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Business Acquisitions, by Acquisition [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_1dd77d35-7ae1-47b0-9e6e-bc768e820325_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of common stock pursuant to exercise of options</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Value, Restricted Stock Award, Net of Forfeitures</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_7b225a3b-28c4-4166-93a5-098390629c4e_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchase of common stock through stock repurchase program</link:label>
    <link:label id="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_label_en-US" xlink:label="lab_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments for Repurchase of Common Stock</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:to="lab_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsAbstract_38f3e6f8-6679-4f54-9191-0f3734fda833_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ASSETS</link:label>
    <link:label id="lab_us-gaap_AssetsAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsAbstract" xlink:to="lab_us-gaap_AssetsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_ca9a735a-f5f8-4552-bcd5-bc4df363a8d4_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Property, Plant and Equipment [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FurnitureAndFixturesMember_9a95fc88-73f1-4a1e-bdbb-2d91b4e81050_terseLabel_en-US" xlink:label="lab_us-gaap_FurnitureAndFixturesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Furniture and fixtures</link:label>
    <link:label id="lab_us-gaap_FurnitureAndFixturesMember_label_en-US" xlink:label="lab_us-gaap_FurnitureAndFixturesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Furniture and Fixtures [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FurnitureAndFixturesMember" xlink:to="lab_us-gaap_FurnitureAndFixturesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_form_SystemsSegmentMember_2f48bdb3-763c-4f6b-b64c-8265dd7bcf4a_terseLabel_en-US" xlink:label="lab_form_SystemsSegmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Systems</link:label>
    <link:label id="lab_form_SystemsSegmentMember_label_en-US" xlink:label="lab_form_SystemsSegmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Systems Segment [Member]</link:label>
    <link:label id="lab_form_SystemsSegmentMember_documentation_en-US" xlink:label="lab_form_SystemsSegmentMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Systems Segment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_SystemsSegmentMember" xlink:href="form-20210327.xsd#form_SystemsSegmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_SystemsSegmentMember" xlink:to="lab_form_SystemsSegmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressStateOrProvince_4d5c0ff1-f90c-46f5-9531-57dd05fd8771_terseLabel_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:label id="lab_dei_EntityAddressStateOrProvince_label_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressStateOrProvince"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressStateOrProvince" xlink:to="lab_dei_EntityAddressStateOrProvince" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_7c74ceca-6a89-4747-a574-c4dfcd162f37_negatedLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Awards vested (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeasePayments_937870b6-4573-4e18-a9cc-36c6fc462fab_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasePayments" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeasePayments_label_en-US" xlink:label="lab_us-gaap_OperatingLeasePayments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Payments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasePayments" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeasePayments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasePayments" xlink:to="lab_us-gaap_OperatingLeasePayments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsPayableCurrent_4760410b-919c-4f31-9504-4c98c727dc51_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_AccountsPayableCurrent_label_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Payable, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableCurrent" xlink:to="lab_us-gaap_AccountsPayableCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_7749ee00-b370-49e0-9597-c1777aae6a92_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foreign currency translation</link:label>
    <link:label id="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_label_en-US" xlink:label="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, Foreign Currency Translation Gain (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:to="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_90e32116-f240-4187-aa88-5aebcdc209a8_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Liabilities</link:label>
    <link:label id="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Payable and Accrued Liabilities Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:to="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_d2b614e2-4957-4b8d-b92e-b363f5a04af0_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</link:label>
    <link:label id="lab_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_label_en-US" xlink:label="lab_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xlink:to="lab_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_ac67c181-0069-4e00-92ef-79d0f9a7b531_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated deficit</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retained Earnings (Accumulated Deficit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_23927e91-c5c8-43f3-8923-d3cdadb6c2e5_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease, right-of-use-assets</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Right-of-Use Asset</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_127cc06e-bd74-4d5d-970c-716cd02d1aad_terseLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reconciliation of cash, cash equivalents and restricted cash:</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_d650c3d2-5ddc-485c-b3ea-d52e9758574e_terseLabel_en-US" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Useful Life (in years)</link:label>
    <link:label id="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_label_en-US" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquired Finite-lived Intangible Assets, Weighted Average Useful Life</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:to="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_034d38bf-21bd-488d-8dd7-be5298fbee60_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2022</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockSharesAcquired_4adb5a38-50f0-4402-bbc9-a42d80498ccf_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockSharesAcquired" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchase of common stock through repurchase program (in shares)</link:label>
    <link:label id="lab_us-gaap_TreasuryStockSharesAcquired_label_en-US" xlink:label="lab_us-gaap_TreasuryStockSharesAcquired" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock, Shares, Acquired</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockSharesAcquired"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockSharesAcquired" xlink:to="lab_us-gaap_TreasuryStockSharesAcquired" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_d97ef0c7-c7d6-429b-992b-e13bed3a9414_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding, beginning of period (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_1be0aae5-d0e6-4d37-a975-f74910d096a2_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding, end of period (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_ce12ede0-1f83-454f-b832-e03ba95d1650_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, plant and equipment</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_7feecd78-59e7-4ef9-92fa-12ef12868ebc_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2025</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredCreditsAndOtherLiabilitiesNoncurrent_d23e46e2-08ed-4701-b564-bf2b5575ca95_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredCreditsAndOtherLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other liabilities</link:label>
    <link:label id="lab_us-gaap_DeferredCreditsAndOtherLiabilitiesNoncurrent_label_en-US" xlink:label="lab_us-gaap_DeferredCreditsAndOtherLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Credits and Other Liabilities, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredCreditsAndOtherLiabilitiesNoncurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredCreditsAndOtherLiabilitiesNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredCreditsAndOtherLiabilitiesNoncurrent" xlink:to="lab_us-gaap_DeferredCreditsAndOtherLiabilitiesNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_form_FRTMember_378a3bb8-3177-49c8-8adf-0479f0d40d83_terseLabel_en-US" xlink:label="lab_form_FRTMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">FRT</link:label>
    <link:label id="lab_form_FRTMember_label_en-US" xlink:label="lab_form_FRTMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">FRT [Member]</link:label>
    <link:label id="lab_form_FRTMember_documentation_en-US" xlink:label="lab_form_FRTMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">FRT</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_FRTMember" xlink:href="form-20210327.xsd#form_FRTMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_FRTMember" xlink:to="lab_form_FRTMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_19e42822-ca6c-41f6-b978-fe0f987bcf4e_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Assets Measured on Recurring Basis</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MajorCustomersAxis_0aa94eeb-b9bc-4ef1-aeb6-647ae296f60a_terseLabel_en-US" xlink:label="lab_srt_MajorCustomersAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Major Customers [Axis]</link:label>
    <link:label id="lab_srt_MajorCustomersAxis_label_en-US" xlink:label="lab_srt_MajorCustomersAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MajorCustomersAxis" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MajorCustomersAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MajorCustomersAxis" xlink:to="lab_srt_MajorCustomersAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharesOutstanding_861da42c-9298-4a5c-94d7-8a25c5eef3b7_periodStartLabel_en-US" xlink:label="lab_us-gaap_SharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Beginning balance (in shares)</link:label>
    <link:label id="lab_us-gaap_SharesOutstanding_cf20038f-3c89-4a3e-b1dd-315115a3db7a_periodEndLabel_en-US" xlink:label="lab_us-gaap_SharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Ending balance (in shares)</link:label>
    <link:label id="lab_us-gaap_SharesOutstanding_label_en-US" xlink:label="lab_us-gaap_SharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shares, Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesOutstanding" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharesOutstanding" xlink:to="lab_us-gaap_SharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour_04290a11-7b29-43a7-a7d9-b45673e9603d_terseLabel_en-US" xlink:label="lab_form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Thereafter</link:label>
    <link:label id="lab_form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour_label_en-US" xlink:label="lab_form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, after Year Four</link:label>
    <link:label id="lab_form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour_documentation_en-US" xlink:label="lab_form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, after Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" xlink:href="form-20210327.xsd#form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" xlink:to="lab_form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_HedgingDesignationDomain_afe9ee36-015f-4555-97fd-be8bd154a39d_terseLabel_en-US" xlink:label="lab_us-gaap_HedgingDesignationDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hedging Designation [Domain]</link:label>
    <link:label id="lab_us-gaap_HedgingDesignationDomain_label_en-US" xlink:label="lab_us-gaap_HedgingDesignationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hedging Designation [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_HedgingDesignationDomain" xlink:to="lab_us-gaap_HedgingDesignationDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseCost_e6bcb712-4c3b-41b2-a963-529bb1c87a4f_totalLabel_en-US" xlink:label="lab_us-gaap_LeaseCost" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total lease expense</link:label>
    <link:label id="lab_us-gaap_LeaseCost_label_en-US" xlink:label="lab_us-gaap_LeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseCost" xlink:to="lab_us-gaap_LeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingExpenses_a705825e-c14c-463d-be48-9b923064b012_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingExpenses" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total operating expenses</link:label>
    <link:label id="lab_us-gaap_OperatingExpenses_label_en-US" xlink:label="lab_us-gaap_OperatingExpenses" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Expenses</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpenses" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingExpenses"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingExpenses" xlink:to="lab_us-gaap_OperatingExpenses" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_ade249d5-1356-4cf4-92c5-f2e85f4f0e9c_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other comprehensive loss, net of tax:</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Net of Tax [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_921d818c-10c1-44ed-8f90-dca1997ca138_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercisable (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_d620f82c-d26f-4ca1-a324-f744ea57fedc_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, par value (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_label_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Par or Stated Value Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MarketableSecurities_37922354-0db1-4b6f-a8db-f3a1cb1077cd_terseLabel_en-US" xlink:label="lab_us-gaap_MarketableSecurities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Marketable securities</link:label>
    <link:label id="lab_us-gaap_MarketableSecurities_label_en-US" xlink:label="lab_us-gaap_MarketableSecurities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Marketable Securities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MarketableSecurities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MarketableSecurities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MarketableSecurities" xlink:to="lab_us-gaap_MarketableSecurities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxAssetsNet_7304958d-c575-4c82-a21b-d7b0c6b22777_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred tax assets</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxAssetsNet_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Income Tax Assets, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxAssetsNet" xlink:to="lab_us-gaap_DeferredIncomeTaxAssetsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MarketableSecuritiesCurrent_bc8e2495-34c0-4c7a-9f19-c2be0722ab1b_terseLabel_en-US" xlink:label="lab_us-gaap_MarketableSecuritiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Marketable securities</link:label>
    <link:label id="lab_us-gaap_MarketableSecuritiesCurrent_label_en-US" xlink:label="lab_us-gaap_MarketableSecuritiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Marketable Securities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MarketableSecuritiesCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MarketableSecuritiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MarketableSecuritiesCurrent" xlink:to="lab_us-gaap_MarketableSecuritiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryWorkInProcessNetOfReserves_524458d5-6273-41a0-96a7-ba2ece6cf728_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Work-in-progress</link:label>
    <link:label id="lab_us-gaap_InventoryWorkInProcessNetOfReserves_label_en-US" xlink:label="lab_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Work in Process, Net of Reserves</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:to="lab_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_843229b7-9b65-46ff-bdfc-3e774d320b01_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock-based compensation</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">APIC, Share-based Payment Arrangement, Increase for Cost Recognition</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_d4b8062c-f2a6-4be0-850d-7e0b62a7a1de_terseLabel_en-US" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effect of exchange rate changes on cash, cash equivalents and restricted cash</link:label>
    <link:label id="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_label_en-US" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConstructionInProgressGross_b92dba43-c368-4cf1-8bef-f0bb5f1f9c36_terseLabel_en-US" xlink:label="lab_us-gaap_ConstructionInProgressGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Construction-in-process</link:label>
    <link:label id="lab_us-gaap_ConstructionInProgressGross_label_en-US" xlink:label="lab_us-gaap_ConstructionInProgressGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Construction in Progress, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConstructionInProgressGross" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConstructionInProgressGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConstructionInProgressGross" xlink:to="lab_us-gaap_ConstructionInProgressGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryNet_e8b6c1b1-8582-411d-86fb-9b5e822080b3_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories, net</link:label>
    <link:label id="lab_us-gaap_InventoryNet_a6a2da5d-e2f7-4171-a646-eca18e200316_totalLabel_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_InventoryNet_label_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryNet" xlink:to="lab_us-gaap_InventoryNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_7fe4beed-c8ba-4cb5-946c-12d38a233c2c_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenues</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer, Excluding Assessed Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementFrequencyDomain_d900add5-1519-42c5-b0b7-c4d4ec4d1c9f_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementFrequencyDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Measurement Frequency [Domain]</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementFrequencyDomain_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementFrequencyDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Measurement Frequency [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementFrequencyDomain" xlink:to="lab_us-gaap_FairValueMeasurementFrequencyDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskPercentage1_4ccbfeb7-2440-43c8-a676-001199ba9515_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskPercentage1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration risk percentage</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskPercentage1_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskPercentage1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk, Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskPercentage1" xlink:to="lab_us-gaap_ConcentrationRiskPercentage1" xlink:type="arc" order="1"/>
    <link:label id="lab_form_ChangeInCapitalExpendituresIncurredButNotYetPaid_7ad96451-2f66-4da6-a560-54d2e17dffa7_terseLabel_en-US" xlink:label="lab_form_ChangeInCapitalExpendituresIncurredButNotYetPaid" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Change in accounts payable and accrued liabilities related to property, plant and equipment purchases</link:label>
    <link:label id="lab_form_ChangeInCapitalExpendituresIncurredButNotYetPaid_label_en-US" xlink:label="lab_form_ChangeInCapitalExpendituresIncurredButNotYetPaid" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Change In Capital Expenditures Incurred But Not Yet Paid</link:label>
    <link:label id="lab_form_ChangeInCapitalExpendituresIncurredButNotYetPaid_documentation_en-US" xlink:label="lab_form_ChangeInCapitalExpendituresIncurredButNotYetPaid" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Change In Capital Expenditures Incurred But Not Yet Paid</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_ChangeInCapitalExpendituresIncurredButNotYetPaid" xlink:href="form-20210327.xsd#form_ChangeInCapitalExpendituresIncurredButNotYetPaid"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_ChangeInCapitalExpendituresIncurredButNotYetPaid" xlink:to="lab_form_ChangeInCapitalExpendituresIncurredButNotYetPaid" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionAxis_6759c1fa-2e06-41a9-b6e6-38fb8b3a4702_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition [Axis]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionAxis_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAxis" xlink:to="lab_us-gaap_BusinessAcquisitionAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_SegmentGeographicalDomain_37241566-23fe-45b1-a35f-709454607a52_terseLabel_en-US" xlink:label="lab_srt_SegmentGeographicalDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Geographical [Domain]</link:label>
    <link:label id="lab_srt_SegmentGeographicalDomain_label_en-US" xlink:label="lab_srt_SegmentGeographicalDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Geographical [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_SegmentGeographicalDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_SegmentGeographicalDomain" xlink:to="lab_srt_SegmentGeographicalDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_ca2afba4-448e-48d6-af32-8cd9ca9ece38_negatedLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred revenue</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Deferred Revenue</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementLineItems_7a0fa649-7f69-43f6-bbe6-55a4f0ba3aa3_terseLabel_en-US" xlink:label="lab_us-gaap_StatementLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:label id="lab_us-gaap_StatementLineItems_label_en-US" xlink:label="lab_us-gaap_StatementLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementLineItems" xlink:to="lab_us-gaap_StatementLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ClassOfStockDomain_f8b56ff4-66e8-4079-b36c-3c123bbb8589_terseLabel_en-US" xlink:label="lab_us-gaap_ClassOfStockDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class of Stock [Domain]</link:label>
    <link:label id="lab_us-gaap_ClassOfStockDomain_label_en-US" xlink:label="lab_us-gaap_ClassOfStockDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class of Stock [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ClassOfStockDomain" xlink:to="lab_us-gaap_ClassOfStockDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_form_ExistingDevelopedTechnologiesMember_fcdae796-2cfd-4f06-bcf4-3f369d3dcb14_verboseLabel_en-US" xlink:label="lab_form_ExistingDevelopedTechnologiesMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Developed technologies</link:label>
    <link:label id="lab_form_ExistingDevelopedTechnologiesMember_label_en-US" xlink:label="lab_form_ExistingDevelopedTechnologiesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Existing Developed Technologies [Member]</link:label>
    <link:label id="lab_form_ExistingDevelopedTechnologiesMember_documentation_en-US" xlink:label="lab_form_ExistingDevelopedTechnologiesMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Existing Developed Technologies [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_ExistingDevelopedTechnologiesMember" xlink:href="form-20210327.xsd#form_ExistingDevelopedTechnologiesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_ExistingDevelopedTechnologiesMember" xlink:to="lab_form_ExistingDevelopedTechnologiesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ComputerEquipmentMember_8e62180a-af6a-4118-b527-616e9ca65df1_terseLabel_en-US" xlink:label="lab_us-gaap_ComputerEquipmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Computer equipment and software</link:label>
    <link:label id="lab_us-gaap_ComputerEquipmentMember_label_en-US" xlink:label="lab_us-gaap_ComputerEquipmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Computer Equipment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComputerEquipmentMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ComputerEquipmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComputerEquipmentMember" xlink:to="lab_us-gaap_ComputerEquipmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongMember_bdbc62da-5fe3-4412-9aef-6addb7af00a5_terseLabel_en-US" xlink:label="lab_us-gaap_LongMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Buy</link:label>
    <link:label id="lab_us-gaap_LongMember_label_en-US" xlink:label="lab_us-gaap_LongMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongMember" xlink:to="lab_us-gaap_LongMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets_8fa94464-863f-4f5c-98dc-ee385f519ace_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prepaid expenses and other current assets</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Prepaid Expense and Other Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementTable_80fc0d10-3021-4265-9987-4c2dcc8a0aa7_terseLabel_en-US" xlink:label="lab_us-gaap_StatementTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Table]</link:label>
    <link:label id="lab_us-gaap_StatementTable_label_en-US" xlink:label="lab_us-gaap_StatementTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementTable" xlink:to="lab_us-gaap_StatementTable" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeAxis_ad338112-990a-4143-af84-41ab5cd5e941_terseLabel_en-US" xlink:label="lab_srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:label id="lab_srt_RangeAxis_label_en-US" xlink:label="lab_srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeAxis" xlink:to="lab_srt_RangeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_USGovernmentAgenciesDebtSecuritiesMember_6757996b-9458-46bd-a6e6-aef986449d6c_terseLabel_en-US" xlink:label="lab_us-gaap_USGovernmentAgenciesDebtSecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">U.S. agency securities</link:label>
    <link:label id="lab_us-gaap_USGovernmentAgenciesDebtSecuritiesMember_label_en-US" xlink:label="lab_us-gaap_USGovernmentAgenciesDebtSecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">US Government Agencies Debt Securities [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USGovernmentAgenciesDebtSecuritiesMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_USGovernmentAgenciesDebtSecuritiesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_USGovernmentAgenciesDebtSecuritiesMember" xlink:to="lab_us-gaap_USGovernmentAgenciesDebtSecuritiesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementsNonrecurringMember_5902bbfa-b924-4552-b5d4-874832362b04_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsNonrecurringMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Nonrecurring</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementsNonrecurringMember_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsNonrecurringMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Nonrecurring [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsNonrecurringMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementsNonrecurringMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementsNonrecurringMember" xlink:to="lab_us-gaap_FairValueMeasurementsNonrecurringMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax_436ba000-9ff5-4329-8d80-4a2aac444fc0_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amount of Gain or (Loss) Reclassified from Accumulated OCI into Income (Effective Portion)</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax_b494a9ad-1917-4ecb-83fd-d1bfc297f862_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amount of Gain (Loss) Reclassified from Accumulated OCI into Income</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), Reclassification, before Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationsAbstract_41a009e9-d6ff-4a22-a902-04f1dfbfacae_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combinations [Abstract]</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationsAbstract_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combinations [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationsAbstract" xlink:to="lab_us-gaap_BusinessCombinationsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntitySmallBusiness_abe11822-64e9-4ec5-9e62-992cea3296bf_terseLabel_en-US" xlink:label="lab_dei_EntitySmallBusiness" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Small Business</link:label>
    <link:label id="lab_dei_EntitySmallBusiness_label_en-US" xlink:label="lab_dei_EntitySmallBusiness" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Small Business</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntitySmallBusiness" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntitySmallBusiness"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntitySmallBusiness" xlink:to="lab_dei_EntitySmallBusiness" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_7baee8fc-4db0-48cf-9ce2-e95cf86c1d23_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Stockholders' Equity [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Stockholders' Equity [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_b4df934b-c544-4e67-b826-b0100c27a4f6_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Hierarchy and NAV [Domain]</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Hierarchy and NAV [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_09983a14-bc4c-4097-94b5-1972a6a505fd_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercisable, weighted average remaining contractual life</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AutomobilesMember_57b6bc4e-a13b-4303-92cc-ac7ac9493280_terseLabel_en-US" xlink:label="lab_us-gaap_AutomobilesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Automobiles</link:label>
    <link:label id="lab_us-gaap_AutomobilesMember_label_en-US" xlink:label="lab_us-gaap_AutomobilesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Automobiles [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AutomobilesMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AutomobilesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AutomobilesMember" xlink:to="lab_us-gaap_AutomobilesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember_54c768ef-a3a7-4dbc-b4b1-d3e2de4df0df_terseLabel_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, general and administrative</link:label>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember_label_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, General and Administrative Expenses [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:to="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock_2723d3d0-bf49-4580-89ff-577cd67d0df1_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Foreign Currency Forward Contracts</link:label>
    <link:label id="lab_us-gaap_ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Foreign Exchange Contracts, Statement of Financial Position [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillRollForward_e87fa7ab-4766-48e8-9525-896340111ad5_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_GoodwillRollForward_label_en-US" xlink:label="lab_us-gaap_GoodwillRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillRollForward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillRollForward" xlink:to="lab_us-gaap_GoodwillRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AmendmentFlag_ef97f938-7630-47dd-b742-665fe602fbc2_terseLabel_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amendment Flag</link:label>
    <link:label id="lab_dei_AmendmentFlag_label_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amendment Flag</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_AmendmentFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AmendmentFlag" xlink:to="lab_dei_AmendmentFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_77408c57-bd33-4711-bfcd-ce1a06952639_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Calculation of Numerator and Denominator in Earnings Per Share</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_74c7dba1-6f2c-45f6-8ed1-1de5d99c6044_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted-average number of shares used in per share calculations:</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_042b11e1-889d-4c97-8e8d-5fbb0652838c_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_cb5cbd9c-94ee-460a-a087-c76bdd52d7b3_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Recognized Identified Assets Acquired and Liabilities Assumed</link:label>
    <link:label id="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherAccruedLiabilitiesCurrent_199b99d2-4fb8-4ff5-9473-9c9ca714b113_terseLabel_en-US" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other accrued expenses</link:label>
    <link:label id="lab_us-gaap_OtherAccruedLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Accrued Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:to="lab_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_272c47f3-7b73-48c1-bab2-c3bf7ca26e3d_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Inventory</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementPolicyPolicyTextBlock_882d9cae-fa7d-4119-a846-c092dfb121f2_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementPolicyPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Measurement, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementPolicyPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:to="lab_us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_5df39451-9b48-486a-9127-ba69283378e4_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash provided by operating activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCentralIndexKey_3a0eb0a8-c187-4787-b07f-26e5eb6228ea_terseLabel_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:label id="lab_dei_EntityCentralIndexKey_label_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityCentralIndexKey"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCentralIndexKey" xlink:to="lab_dei_EntityCentralIndexKey" xlink:type="arc" order="1"/>
    <link:label id="lab_form_FRTGmbHMember_d1898b48-5294-4597-a866-f1df6dbaf4c3_terseLabel_en-US" xlink:label="lab_form_FRTGmbHMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">FRT GmbH</link:label>
    <link:label id="lab_form_FRTGmbHMember_label_en-US" xlink:label="lab_form_FRTGmbHMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">FRT GmbH [Member]</link:label>
    <link:label id="lab_form_FRTGmbHMember_documentation_en-US" xlink:label="lab_form_FRTGmbHMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">FRT GmbH [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_FRTGmbHMember" xlink:href="form-20210327.xsd#form_FRTGmbHMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_FRTGmbHMember" xlink:to="lab_form_FRTGmbHMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueByMeasurementFrequencyAxis_150eb6e8-1ad5-4f6c-b892-25e7146c304d_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByMeasurementFrequencyAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Measurement Frequency [Axis]</link:label>
    <link:label id="lab_us-gaap_FairValueByMeasurementFrequencyAxis_label_en-US" xlink:label="lab_us-gaap_FairValueByMeasurementFrequencyAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Measurement Frequency [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByMeasurementFrequencyAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis" xlink:to="lab_us-gaap_FairValueByMeasurementFrequencyAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeInstrumentRiskAxis_9d559c03-dfba-4a2c-9fdc-c3d0ad0db0f3_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentRiskAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Instrument [Axis]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentRiskAxis_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentRiskAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Instrument [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis" xlink:to="lab_us-gaap_DerivativeInstrumentRiskAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock_8b44e7a9-273f-4098-9fdd-7edf1c19cf90_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of ESPP Activity</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Share-based Compensation, Employee Stock Purchase Plan, Activity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_a0597624-955d-45a4-bf4e-58fa71350b4f_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeGainLossOnDerivativeNet_2d781df8-1f7c-40e9-a814-440511793ab7_verboseLabel_en-US" xlink:label="lab_us-gaap_DerivativeGainLossOnDerivativeNet" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivatives Not Designated as Hedging Instruments</link:label>
    <link:label id="lab_us-gaap_DerivativeGainLossOnDerivativeNet_label_en-US" xlink:label="lab_us-gaap_DerivativeGainLossOnDerivativeNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative, Gain (Loss) on Derivative, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeGainLossOnDerivativeNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeGainLossOnDerivativeNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeGainLossOnDerivativeNet" xlink:to="lab_us-gaap_DerivativeGainLossOnDerivativeNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_fcef41e6-312c-4b3e-b943-513898296407_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Intangible Assets</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_StatementGeographicalAxis_28fd1610-df90-4ae4-b135-9e899f7b6a74_terseLabel_en-US" xlink:label="lab_srt_StatementGeographicalAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:label id="lab_srt_StatementGeographicalAxis_label_en-US" xlink:label="lab_srt_StatementGeographicalAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_StatementGeographicalAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_StatementGeographicalAxis" xlink:to="lab_srt_StatementGeographicalAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentDomain_2bca3990-5e12-4fa7-ba04-5bd75d38f60e_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segments [Domain]</link:label>
    <link:label id="lab_us-gaap_SegmentDomain_label_en-US" xlink:label="lab_us-gaap_SegmentDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segments [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentDomain" xlink:to="lab_us-gaap_SegmentDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseRenewalTerm_ad3c2480-247c-4092-a315-ec0673963b7b_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease, renewal term</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseRenewalTerm_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Renewal Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:to="lab_us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfCashFlowsAbstract_a983dabb-10d7-4f85-a473-9ce54b39f882_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfCashFlowsAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract" xlink:to="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6bbcdc17-a0ee-4c95-bbf3-2401f401f8d0_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Type [Axis]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Lived Tangible Asset [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeStockMember_e343282a-4e88-403e-b119-dd520b8743d7_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employee stock purchase plan</link:label>
    <link:label id="lab_us-gaap_EmployeeStockMember_label_en-US" xlink:label="lab_us-gaap_EmployeeStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employee Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeStockMember" xlink:to="lab_us-gaap_EmployeeStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_bf466af2-c46a-4fb8-8cd6-f7030e1fa4e6_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Axis]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationAxis" xlink:to="lab_us-gaap_IncomeStatementLocationAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_dec5354d-463a-4766-84b3-92f663324af5_terseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Allowance for doubtful accounts</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_70d6d31e-3b6b-45ed-bc56-6190fe0b31be_terseLabel_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_label_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCommonStockSharesOutstanding" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCommonStockSharesOutstanding" xlink:to="lab_dei_EntityCommonStockSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_5d92211e-2674-4964-b678-914d95bdb750_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Domain]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationDomain" xlink:to="lab_us-gaap_IncomeStatementLocationDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_12c37197-68f9-4f82-bae1-50ac2d700a75_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2023</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_f2e1302f-b880-41c0-aea8-953497a97747_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash flows from financing activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpense_406fc5a2-9bb4-4ac7-a9ec-cf0eda7674b3_terseLabel_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, general and administrative</link:label>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpense_label_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, General and Administrative Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:to="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_country_KR_881c0859-c324-4e25-b466-9ccaec9cbe68_terseLabel_en-US" xlink:label="lab_country_KR" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">South Korea</link:label>
    <link:label id="lab_country_KR_label_en-US" xlink:label="lab_country_KR" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">KOREA, REPUBLIC OF</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_country_KR" xlink:href="https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd#country_KR"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_KR" xlink:to="lab_country_KR" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeNotionalAmount_140d90b1-cb16-4424-b482-bda29e89a0f1_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DerivativeNotionalAmount" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative, notional amount</link:label>
    <link:label id="lab_us-gaap_DerivativeNotionalAmount_label_en-US" xlink:label="lab_us-gaap_DerivativeNotionalAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative, Notional Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeNotionalAmount" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeNotionalAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeNotionalAmount" xlink:to="lab_us-gaap_DerivativeNotionalAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AmortizationOfIntangibleAssets_0a413627-3227-49e6-b8b8-b8292d53ac67_terseLabel_en-US" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of intangible assets</link:label>
    <link:label id="lab_us-gaap_AmortizationOfIntangibleAssets_label_en-US" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of Intangible Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfIntangibleAssets" xlink:to="lab_us-gaap_AmortizationOfIntangibleAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ForeignExchangeContractMember_60ed56b6-3a54-41cc-9299-65d7951425e9_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignExchangeContractMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foreign exchange derivative contracts</link:label>
    <link:label id="lab_us-gaap_ForeignExchangeContractMember_label_en-US" xlink:label="lab_us-gaap_ForeignExchangeContractMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foreign Exchange Contract [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignExchangeContractMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ForeignExchangeContractMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignExchangeContractMember" xlink:to="lab_us-gaap_ForeignExchangeContractMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseCostTableTextBlock_458fa045-125e-4832-adaf-63772d508aaa_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseCostTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Components of Lease Expense</link:label>
    <link:label id="lab_us-gaap_LeaseCostTableTextBlock_label_en-US" xlink:label="lab_us-gaap_LeaseCostTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease, Cost [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCostTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseCostTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseCostTableTextBlock" xlink:to="lab_us-gaap_LeaseCostTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_9e390339-8501-48af-a27c-1457e3fe7134_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2024</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_form_EquityIncentivePlanMember_bdc12d30-fc69-4030-bfe0-3a326140406b_terseLabel_en-US" xlink:label="lab_form_EquityIncentivePlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Incentive Plan</link:label>
    <link:label id="lab_form_EquityIncentivePlanMember_label_en-US" xlink:label="lab_form_EquityIncentivePlanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Incentive Plan [Member]</link:label>
    <link:label id="lab_form_EquityIncentivePlanMember_documentation_en-US" xlink:label="lab_form_EquityIncentivePlanMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Incentive Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_EquityIncentivePlanMember" xlink:href="form-20210327.xsd#form_EquityIncentivePlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_EquityIncentivePlanMember" xlink:to="lab_form_EquityIncentivePlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_e47a29a3-a666-483d-a3bb-9d6d29585c7a_terseLabel_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other assets</link:label>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_label_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Assets, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAssetsNoncurrent" xlink:to="lab_us-gaap_OtherAssetsNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PlanNameAxis_107a8005-449e-47a7-be54-c6d5bd67451b_terseLabel_en-US" xlink:label="lab_us-gaap_PlanNameAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Plan Name [Axis]</link:label>
    <link:label id="lab_us-gaap_PlanNameAxis_label_en-US" xlink:label="lab_us-gaap_PlanNameAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Plan Name [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PlanNameAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PlanNameAxis" xlink:to="lab_us-gaap_PlanNameAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingDisclosureTextBlock_9341725d-0b61-4eb3-83e8-f9de5645d2ec_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Segments and Enterprise-Wide Information</link:label>
    <link:label id="lab_us-gaap_SegmentReportingDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingDisclosureTextBlock" xlink:to="lab_us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure_5d9a5b65-2a16-4ab2-a492-c334c1d499a0_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and Cash Equivalents, Fair Value Disclosure</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsFairValueDisclosure"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:to="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_cd6efe6b-7d05-491a-90ad-044085f89888_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of common stock pursuant to vesting of restricted stock units (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Shares, Restricted Stock Award, Net of Forfeitures</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskTable_9f27eff1-1a46-4e25-9439-da1f65a9ef3c_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk [Table]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskTable_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskTable" xlink:to="lab_us-gaap_ConcentrationRiskTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Assets_fd90b4dc-295a-4b74-a922-9988bc767d9d_totalLabel_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total assets</link:label>
    <link:label id="lab_us-gaap_Assets_label_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Assets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Assets" xlink:to="lab_us-gaap_Assets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerMember_9097607d-420e-4307-a2e7-ccdb7b7f7eb2_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer Benchmark</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerMember_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer Benchmark [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerMember" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_f220bb06-5aad-4c47-8b5c-0f62c546d996_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Beginning balance (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_c9379494-f77f-435b-ba8a-4b9d29d5cf9c_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Ending balance (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_Security12bTitle_ca6098f9-4489-416e-b91e-0f40cef700f5_terseLabel_en-US" xlink:label="lab_dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:label id="lab_dei_Security12bTitle_label_en-US" xlink:label="lab_dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_Security12bTitle"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_Security12bTitle" xlink:to="lab_dei_Security12bTitle" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation_5047ac70-f2c1-4ff6-ba04-2e2a07c7454b_negatedLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease liabilities</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Asset Acquired and Liability Assumed, Lease Obligation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_aef73c55-b248-44dd-86b5-4e7a8589aa6d_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Accrued Liabilities</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Accrued Liabilities [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OrderOrProductionBacklogMember_8f482bbe-64e7-4d9f-b1ff-b12ec9b9ae83_terseLabel_en-US" xlink:label="lab_us-gaap_OrderOrProductionBacklogMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Order backlog</link:label>
    <link:label id="lab_us-gaap_OrderOrProductionBacklogMember_label_en-US" xlink:label="lab_us-gaap_OrderOrProductionBacklogMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Order or Production Backlog [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrderOrProductionBacklogMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OrderOrProductionBacklogMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OrderOrProductionBacklogMember" xlink:to="lab_us-gaap_OrderOrProductionBacklogMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNet_c2aef1cb-d349-4a69-88d6-cc6da8be8a45_totalLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNet_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_form_ProbeCardsSegmentMember_07ecccea-e8e8-4f9d-b752-994a7e374cd5_terseLabel_en-US" xlink:label="lab_form_ProbeCardsSegmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Probe Cards</link:label>
    <link:label id="lab_form_ProbeCardsSegmentMember_label_en-US" xlink:label="lab_form_ProbeCardsSegmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Probe Cards Segment [Member]</link:label>
    <link:label id="lab_form_ProbeCardsSegmentMember_documentation_en-US" xlink:label="lab_form_ProbeCardsSegmentMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Probe Cards Segment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_ProbeCardsSegmentMember" xlink:href="form-20210327.xsd#form_ProbeCardsSegmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_ProbeCardsSegmentMember" xlink:to="lab_form_ProbeCardsSegmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_form_BaldwinParkMember_4037051e-f5ac-4c13-be6c-4f6c76446614_terseLabel_en-US" xlink:label="lab_form_BaldwinParkMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Baldwin Park</link:label>
    <link:label id="lab_form_BaldwinParkMember_label_en-US" xlink:label="lab_form_BaldwinParkMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Baldwin Park [Member]</link:label>
    <link:label id="lab_form_BaldwinParkMember_documentation_en-US" xlink:label="lab_form_BaldwinParkMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Baldwin Park</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_BaldwinParkMember" xlink:href="form-20210327.xsd#form_BaldwinParkMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_BaldwinParkMember" xlink:to="lab_form_BaldwinParkMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_0b7b3000-7610-409c-b42f-187e85221060_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrealized losses on available-for-sale marketable securities</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">OCI, Debt Securities, Available-for-Sale, Unrealized Holding Gain (Loss), before Adjustment, after Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_KRW_c2cfeb5c-aa2c-4635-8c34-7caeca6ecc9a_terseLabel_en-US" xlink:label="lab_currency_KRW" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Korean Won</link:label>
    <link:label id="lab_currency_KRW_label_en-US" xlink:label="lab_currency_KRW" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Korea (South), Won</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_KRW" xlink:href="https://xbrl.sec.gov/currency/2020/currency-2020-01-31.xsd#currency_KRW"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_KRW" xlink:to="lab_currency_KRW" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfSalesMember_85527e41-7b6d-448b-a0dd-bd865629d629_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfSalesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of revenues</link:label>
    <link:label id="lab_us-gaap_CostOfSalesMember_label_en-US" xlink:label="lab_us-gaap_CostOfSalesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of Sales [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfSalesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfSalesMember" xlink:to="lab_us-gaap_CostOfSalesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_JPY_1b28499b-3f0d-4809-8fd0-7f5617170c7a_terseLabel_en-US" xlink:label="lab_currency_JPY" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Japanese Yen</link:label>
    <link:label id="lab_currency_JPY_label_en-US" xlink:label="lab_currency_JPY" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Japan, Yen</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_JPY" xlink:href="https://xbrl.sec.gov/currency/2020/currency-2020-01-31.xsd#currency_JPY"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_JPY" xlink:to="lab_currency_JPY" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InterestExpense_acebe7c5-a999-4ab1-896c-d03ec29b1896_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_InterestExpense" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest expense</link:label>
    <link:label id="lab_us-gaap_InterestExpense_label_en-US" xlink:label="lab_us-gaap_InterestExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InterestExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestExpense" xlink:to="lab_us-gaap_InterestExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_9c5b55a0-2c05-4df0-b68a-c77875031374_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ProductOrServiceAxis_35ab011b-7fea-46c4-a2bc-d908fcb3b40e_terseLabel_en-US" xlink:label="lab_srt_ProductOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Axis]</link:label>
    <link:label id="lab_srt_ProductOrServiceAxis_label_en-US" xlink:label="lab_srt_ProductOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductOrServiceAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductOrServiceAxis" xlink:to="lab_srt_ProductOrServiceAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Liabilities_7c76895e-9760-472c-8685-ded22d6952b8_totalLabel_en-US" xlink:label="lab_us-gaap_Liabilities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total liabilities</link:label>
    <link:label id="lab_us-gaap_Liabilities_label_en-US" xlink:label="lab_us-gaap_Liabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Liabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Liabilities" xlink:to="lab_us-gaap_Liabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_form_MajorCustomer1Member_fd7d191a-3649-4769-aee7-76eae1b6b515_terseLabel_en-US" xlink:label="lab_form_MajorCustomer1Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Major Customer 1</link:label>
    <link:label id="lab_form_MajorCustomer1Member_label_en-US" xlink:label="lab_form_MajorCustomer1Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Major Customer 1 [Member]</link:label>
    <link:label id="lab_form_MajorCustomer1Member_documentation_en-US" xlink:label="lab_form_MajorCustomer1Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer 1 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_MajorCustomer1Member" xlink:href="form-20210327.xsd#form_MajorCustomer1Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_MajorCustomer1Member" xlink:to="lab_form_MajorCustomer1Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TransferredAtPointInTimeMember_1bb65985-aec2-438e-8ed6-2d916e730c0b_terseLabel_en-US" xlink:label="lab_us-gaap_TransferredAtPointInTimeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Products transferred at a point in time</link:label>
    <link:label id="lab_us-gaap_TransferredAtPointInTimeMember_label_en-US" xlink:label="lab_us-gaap_TransferredAtPointInTimeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Transferred at Point in Time [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransferredAtPointInTimeMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TransferredAtPointInTimeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TransferredAtPointInTimeMember" xlink:to="lab_us-gaap_TransferredAtPointInTimeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_6556a172-ef5c-4da3-97ce-acc7e4a0c92e_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Average Expected Recognition Period in Years</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_48dd8021-b158-4aa0-ad08-6bb2c8f43c2d_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less: interest</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_051d85f5-122b-4370-8a95-ac06ddf5bfde_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vested and expected to vest, weighted average remaining contractual life</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PositionDomain_7a02cb48-621e-478d-bc9b-42f323f71f8c_terseLabel_en-US" xlink:label="lab_us-gaap_PositionDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Position [Domain]</link:label>
    <link:label id="lab_us-gaap_PositionDomain_label_en-US" xlink:label="lab_us-gaap_PositionDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Position [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PositionDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PositionDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PositionDomain" xlink:to="lab_us-gaap_PositionDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_c17c4f97-06ba-47b3-afc1-5c3dcf12e214_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue recognized included in contracts</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Liability, Revenue Recognized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:to="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_6ce3bcf0-99ee-4d0e-9a00-d1262329dbca_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueInputsLevel1Member_d37e11e2-ccb0-4575-af22-b83500b9daab_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel1Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Level 1</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel1Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel1Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Inputs, Level 1 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel1Member" xlink:to="lab_us-gaap_FairValueInputsLevel1Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseExpense_b17ee2c2-20d2-4390-9914-9b480667ff89_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease expense</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseExpense_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseExpense" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseExpense" xlink:to="lab_us-gaap_OperatingLeaseExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax_fe563bdb-e54b-4c77-bdce-255413298ba1_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amount of Gain or (Loss) Recognized in OCI on Derivative (Effective Portion)</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax_7b76fef2-576b-4e20-918c-f1866455765c_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amount of Gain (Loss) Recognized in Accumulated OCI on Derivative</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), before Reclassification and Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInInventories_7e984357-fe9a-4991-ab58-751d33ca94c7_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInInventories_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Inventories</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInInventories" xlink:to="lab_us-gaap_IncreaseDecreaseInInventories" xlink:type="arc" order="1"/>
    <link:label id="lab_form_PerformanceRestrictedStockUnitsMember_bf399927-a8b5-484a-b39a-65d4922991ce_terseLabel_en-US" xlink:label="lab_form_PerformanceRestrictedStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">PRSUs</link:label>
    <link:label id="lab_form_PerformanceRestrictedStockUnitsMember_e6b9de94-c7d1-4795-9b76-8fe6924ece08_verboseLabel_en-US" xlink:label="lab_form_PerformanceRestrictedStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance restricted stock units</link:label>
    <link:label id="lab_form_PerformanceRestrictedStockUnitsMember_label_en-US" xlink:label="lab_form_PerformanceRestrictedStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance Restricted Stock Units [Member]</link:label>
    <link:label id="lab_form_PerformanceRestrictedStockUnitsMember_documentation_en-US" xlink:label="lab_form_PerformanceRestrictedStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance Restricted Stock Units [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_PerformanceRestrictedStockUnitsMember" xlink:href="form-20210327.xsd#form_PerformanceRestrictedStockUnitsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_PerformanceRestrictedStockUnitsMember" xlink:to="lab_form_PerformanceRestrictedStockUnitsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_ddfa243b-0ebb-4345-8177-cc2739fc1ce5_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Recurring and Nonrecurring [Table]</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Recurring and Nonrecurring [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedCashAndCashEquivalentsNoncurrent_29bf3905-7109-4139-89db-72026e92b928_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedCashAndCashEquivalentsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted cash</link:label>
    <link:label id="lab_us-gaap_RestrictedCashAndCashEquivalentsNoncurrent_label_en-US" xlink:label="lab_us-gaap_RestrictedCashAndCashEquivalentsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Cash and Cash Equivalents, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsNoncurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsNoncurrent" xlink:to="lab_us-gaap_RestrictedCashAndCashEquivalentsNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayable_dfd3c0a6-86ee-4c81-bb2d-bc81fe443d7d_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayable_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Accounts Payable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_418f4505-7864-4aaa-a66d-c58cdd293394_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Units</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_229d3a00-d532-452d-a424-ecb293a30733_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Options Outstanding</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryRawMaterialsNetOfReserves_34e7650b-6782-4d37-8da0-ec5346c8353e_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Raw materials</link:label>
    <link:label id="lab_us-gaap_InventoryRawMaterialsNetOfReserves_label_en-US" xlink:label="lab_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Raw Materials, Net of Reserves</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:to="lab_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain_05ac785e-eef7-46dc-9ba3-d2c473ab1504_terseLabel_en-US" xlink:label="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Timing of Transfer of Good or Service [Domain]</link:label>
    <link:label id="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain_label_en-US" xlink:label="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Timing of Transfer of Good or Service [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:to="lab_us-gaap_TimingOfTransferOfGoodOrServiceDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_59a0600b-779a-47dc-8c53-1fc07a9bd7b6_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional Paid-in Capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional Paid-in Capital [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalMember" xlink:to="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:type="arc" order="1"/>
    <link:label id="lab_form_GrossMarginPercent_7ffa7540-9e14-44ac-be0d-b33bc2339976_terseLabel_en-US" xlink:label="lab_form_GrossMarginPercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross margin</link:label>
    <link:label id="lab_form_GrossMarginPercent_label_en-US" xlink:label="lab_form_GrossMarginPercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross Margin, Percent</link:label>
    <link:label id="lab_form_GrossMarginPercent_documentation_en-US" xlink:label="lab_form_GrossMarginPercent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross Margin, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_GrossMarginPercent" xlink:href="form-20210327.xsd#form_GrossMarginPercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_GrossMarginPercent" xlink:to="lab_form_GrossMarginPercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingSegmentsMember_13e0b6ed-8d6b-4aaf-b213-73d5e0e158cc_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingSegmentsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating segments</link:label>
    <link:label id="lab_us-gaap_OperatingSegmentsMember_label_en-US" xlink:label="lab_us-gaap_OperatingSegmentsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Segments [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingSegmentsMember" xlink:to="lab_us-gaap_OperatingSegmentsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherOperatingActivitiesCashFlowStatement_23d58d70-ba75-4ecd-acc2-249acade6b42_terseLabel_en-US" xlink:label="lab_us-gaap_OtherOperatingActivitiesCashFlowStatement" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other adjustments to reconcile net income to net cash provided by operating activities</link:label>
    <link:label id="lab_us-gaap_OtherOperatingActivitiesCashFlowStatement_label_en-US" xlink:label="lab_us-gaap_OtherOperatingActivitiesCashFlowStatement" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Operating Activities, Cash Flow Statement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherOperatingActivitiesCashFlowStatement" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherOperatingActivitiesCashFlowStatement"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherOperatingActivitiesCashFlowStatement" xlink:to="lab_us-gaap_OtherOperatingActivitiesCashFlowStatement" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueLineItems_95063a79-27a0-4602-920e-45530a78db27_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Line Items]</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueLineItems_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems" xlink:to="lab_us-gaap_DisaggregationOfRevenueLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_country_JP_d35fde1b-adcb-46e2-b826-ee7e47cf79ee_terseLabel_en-US" xlink:label="lab_country_JP" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Japan</link:label>
    <link:label id="lab_country_JP_label_en-US" xlink:label="lab_country_JP" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">JAPAN</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_country_JP" xlink:href="https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd#country_JP"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_JP" xlink:to="lab_country_JP" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities_af800c93-8283-4da0-afc8-52fe3d30d80d_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued liabilities</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Accrued Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:to="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueByAssetClassAxis_c9d996ca-fbf4-49d0-b628-004fbeba15f2_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByAssetClassAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Asset Class [Axis]</link:label>
    <link:label id="lab_us-gaap_FairValueByAssetClassAxis_label_en-US" xlink:label="lab_us-gaap_FairValueByAssetClassAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Asset Class [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByAssetClassAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByAssetClassAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByAssetClassAxis" xlink:to="lab_us-gaap_FairValueByAssetClassAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockValueAcquiredCostMethod_7c69d9a5-7a6a-41da-adcf-04473a6a56f9_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchase of common stock through repurchase program</link:label>
    <link:label id="lab_us-gaap_TreasuryStockValueAcquiredCostMethod_label_en-US" xlink:label="lab_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock, Value, Acquired, Cost Method</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:to="lab_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeLiabilities_c00ba1ed-70b5-42de-9a54-3e3615881b94_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DerivativeLiabilities" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative liability</link:label>
    <link:label id="lab_us-gaap_DerivativeLiabilities_label_en-US" xlink:label="lab_us-gaap_DerivativeLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLiabilities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeLiabilities" xlink:to="lab_us-gaap_DerivativeLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_1c3e1a72-22b0-405c-8317-eff2498f3528_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerAbstract_caf48318-37c8-4037-a637-7324357ef449_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer [Abstract]</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerAbstract_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_608c21ee-9730-4784-aa74-8c4d2cd42822_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, shares outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Shares, Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesOutstanding" xlink:to="lab_us-gaap_CommonStockSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VariableLeaseCost_3ef9d6d8-6b83-4495-9cef-eef23236c148_terseLabel_en-US" xlink:label="lab_us-gaap_VariableLeaseCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable lease expense</link:label>
    <link:label id="lab_us-gaap_VariableLeaseCost_label_en-US" xlink:label="lab_us-gaap_VariableLeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableLeaseCost" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableLeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableLeaseCost" xlink:to="lab_us-gaap_VariableLeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTable_29a899d0-22d1-424d-82d7-1eb930eed706_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Goodwill [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Goodwill [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfGoodwillTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable" xlink:to="lab_us-gaap_ScheduleOfGoodwillTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_aba92f87-889f-4cd8-aa10-54034a62ed84_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments to reconcile net income to net cash provided by operating activities:</link:label>
    <link:label id="lab_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments, Noncash Items, to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpense_488209c8-91e2-499a-85a4-d7625e625308_terseLabel_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Research and development</link:label>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpense_label_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Research and Development Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpense" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_2b44477e-0499-4101-b106-70cfc8334d83_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding, beginning of period (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_c0a32c5b-e97b-4461-97f6-1092594ce76d_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding, end of period (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription_65f14986-533e-499d-98ae-7c588c5e774d_terseLabel_en-US" xlink:label="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reclassifications</link:label>
    <link:label id="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription_label_en-US" xlink:label="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reclassification, Comparability Adjustment [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PriorPeriodReclassificationAdjustmentDescription"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:to="lab_us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_f6f8fb96-a2d5-44e4-b1d9-9bf567e9fdf8_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, shares authorized (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesAuthorized" xlink:to="lab_us-gaap_CommonStockSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_49c41d22-363c-4b4e-b8c1-3892868f4055_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Restricted Stock Unit Activity</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Restricted Stock Unit, Activity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_2f4b300b-7828-4066-acfe-d1959c57fa58_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business acquisition, percentage acquired</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition, Percentage of Voting Interests Acquired</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:to="lab_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskByTypeAxis_7ca8a683-4273-42e9-b395-11afc8933fae_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Type [Axis]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskByTypeAxis_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis" xlink:to="lab_us-gaap_ConcentrationRiskByTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_form_DRAMProductGroupMember_9bbfdd19-609e-4d39-b05e-1e74cc81559f_terseLabel_en-US" xlink:label="lab_form_DRAMProductGroupMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">DRAM</link:label>
    <link:label id="lab_form_DRAMProductGroupMember_label_en-US" xlink:label="lab_form_DRAMProductGroupMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">DRAM Product Group [Member]</link:label>
    <link:label id="lab_form_DRAMProductGroupMember_documentation_en-US" xlink:label="lab_form_DRAMProductGroupMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">DRAM Product Group [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_DRAMProductGroupMember" xlink:href="form-20210327.xsd#form_DRAMProductGroupMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_DRAMProductGroupMember" xlink:to="lab_form_DRAMProductGroupMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_c60306d9-faac-4677-8e58-3ff8cacac09b_terseLabel_en-US" xlink:label="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Add potentially dilutive securities (in shares)</link:label>
    <link:label id="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_label_en-US" xlink:label="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Incremental Common Shares Attributable to Dilutive Effect of Share-based Payment Arrangements</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:to="lab_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentGross_3a9155f1-8ef2-4388-94f7-067385f6b80c_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sub-total</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentGross_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_15abdb4c-84b5-4899-8ca9-bb18dadb0403_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Operating Results by Segment</link:label>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:to="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementAbstract_60f41ff8-c057-4d73-85dc-71d2f0afe07f_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementAbstract_label_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementAbstract" xlink:to="lab_us-gaap_IncomeStatementAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_form_MajorCustomer2Member_ab2908ea-0068-44dd-a840-fc9b6347341b_terseLabel_en-US" xlink:label="lab_form_MajorCustomer2Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Major Customer 2</link:label>
    <link:label id="lab_form_MajorCustomer2Member_label_en-US" xlink:label="lab_form_MajorCustomer2Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Major Customer 2 [Member]</link:label>
    <link:label id="lab_form_MajorCustomer2Member_documentation_en-US" xlink:label="lab_form_MajorCustomer2Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Major Customer 2 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_MajorCustomer2Member" xlink:href="form-20210327.xsd#form_MajorCustomer2Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_MajorCustomer2Member" xlink:to="lab_form_MajorCustomer2Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_55df33e5-dad3-43eb-a139-642526e83d74_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss)</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">AOCI Attributable to Parent [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress_6ebe83c7-b247-449a-ae71-9bf45b9750c8_totalLabel_en-US" xlink:label="lab_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net, property, plant and equipment</link:label>
    <link:label id="lab_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress_label_en-US" xlink:label="lab_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property Plant And Equipment Net, Excludes Construction in Progress</link:label>
    <link:label id="lab_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress_documentation_en-US" xlink:label="lab_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property Plant And Equipment Net, Excludes Construction in Progress</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress" xlink:href="form-20210327.xsd#form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress" xlink:to="lab_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_b18d9dfe-cebf-4465-9a36-1ef5502a0377_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term operating lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_e2c20ff3-976e-4d07-97f2-cb714f6f3cf0_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2025</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_284c83e9-0e58-4e24-86cd-275e9367bf9c_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prepaid expenses and other current assets</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Prepaid Expense and Other Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:to="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_737228a3-31f5-48cd-bee4-b2c3b0a2e98b_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amount</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Finite-Lived Intangibles</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_b39084c6-6c04-4bfa-b377-8cd5a093c1d7_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_af62931a-5c0a-4f69-a97c-00e95f776b47_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current assets:</link:label>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets, Current [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrentAbstract" xlink:to="lab_us-gaap_AssetsCurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_fea81026-0cfe-415b-834b-5eb1d6cd2177_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets Acquired as Part of Business Combination</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InvestmentIncomeInterest_00c57ae1-a1b4-482a-805a-4354aa47c0cb_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentIncomeInterest" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest income</link:label>
    <link:label id="lab_us-gaap_InvestmentIncomeInterest_label_en-US" xlink:label="lab_us-gaap_InvestmentIncomeInterest" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Investment Income, Interest</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentIncomeInterest" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InvestmentIncomeInterest"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentIncomeInterest" xlink:to="lab_us-gaap_InvestmentIncomeInterest" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_b92d5722-d173-4d3d-990a-5ecefea97660_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash flows from investing activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities, Continuing Operations [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_560e13a6-6c13-4ead-8452-ecfaf5522f3c_terseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amount remaining for future repurchases</link:label>
    <link:label id="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_label_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Repurchase Program, Remaining Authorized Repurchase Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:to="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTax_99283990-76b6-4832-8e45-49c544639890_totalLabel_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Comprehensive income</link:label>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTax_label_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_AsiaPacificMember_c784ce59-2ab6-49d7-8dd4-531cd8a2faaf_terseLabel_en-US" xlink:label="lab_srt_AsiaPacificMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Asia-Pacific</link:label>
    <link:label id="lab_srt_AsiaPacificMember_label_en-US" xlink:label="lab_srt_AsiaPacificMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Asia Pacific [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AsiaPacificMember" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_AsiaPacificMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_AsiaPacificMember" xlink:to="lab_srt_AsiaPacificMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_cf2f3361-0b48-4f8c-be07-ee9287e5ec33_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquisition of property, plant and equipment</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CityAreaCode_41132fec-41d7-4be0-b73f-e2528825b010_terseLabel_en-US" xlink:label="lab_dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">City Area Code</link:label>
    <link:label id="lab_dei_CityAreaCode_label_en-US" xlink:label="lab_dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">City Area Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_CityAreaCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CityAreaCode" xlink:to="lab_dei_CityAreaCode" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ConsolidationItemsDomain_e24e51b9-1c5c-43c1-a3e0-ab77880261b4_terseLabel_en-US" xlink:label="lab_srt_ConsolidationItemsDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation Items [Domain]</link:label>
    <link:label id="lab_srt_ConsolidationItemsDomain_label_en-US" xlink:label="lab_srt_ConsolidationItemsDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation Items [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ConsolidationItemsDomain" xlink:to="lab_srt_ConsolidationItemsDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentPeriodEndDate_5599c065-4182-4b8d-8054-87b5a4f10cb4_terseLabel_en-US" xlink:label="lab_dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Period End Date</link:label>
    <link:label id="lab_dei_DocumentPeriodEndDate_label_en-US" xlink:label="lab_dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Period End Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentPeriodEndDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentPeriodEndDate" xlink:to="lab_dei_DocumentPeriodEndDate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_c049a089-10d2-4a17-8de7-24f39f7de3a1_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationContingentConsiderationLiability_71713b2a-7bc1-414f-bd72-2f3d03269eca_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contingent consideration</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationContingentConsiderationLiability_fdba6c8c-8bb5-45f9-8e77-bd06d23ffc61_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contingent consideration</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationContingentConsiderationLiability_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Contingent Consideration, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:to="lab_us-gaap_BusinessCombinationContingentConsiderationLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAbstract_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationPercentage_f7bc8cba-8d90-4f64-bc9f-18da940f00fc_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, remaining performance obligation, percentage</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationPercentage_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1_c9012540-1b4f-470a-aaa6-69ebdc71d3a6_terseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock repurchase program authorized amount</link:label>
    <link:label id="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1_label_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Repurchase Program, Authorized Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:to="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_602c994d-208b-4f7c-a072-2ef618278a9c_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue by Segment</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:to="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_e95f8fcc-0286-48be-b87a-09a4f984cd32_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income before income taxes</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income (Loss) from Continuing Operations before Equity Method Investments, Income Taxes, Noncontrolling Interest</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseTermOfContract_f60a9473-2f67-43dc-b0cf-73bfe3ef4911_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseTermOfContract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease, term of contract</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseTermOfContract_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseTermOfContract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Term of Contract</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseTermOfContract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseTermOfContract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseTermOfContract" xlink:to="lab_us-gaap_LesseeOperatingLeaseTermOfContract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_HedgingDesignationAxis_da114f13-c3b0-48e2-9a51-16a6eaac0120_terseLabel_en-US" xlink:label="lab_us-gaap_HedgingDesignationAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hedging Designation [Axis]</link:label>
    <link:label id="lab_us-gaap_HedgingDesignationAxis_label_en-US" xlink:label="lab_us-gaap_HedgingDesignationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hedging Designation [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_HedgingDesignationAxis" xlink:to="lab_us-gaap_HedgingDesignationAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTable_d80d4576-1545-427d-bbac-06ba965b1480_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Table]</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTable_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable" xlink:to="lab_us-gaap_DisaggregationOfRevenueTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_9bde03d2-a59c-40ac-bdc0-ff3b8c669bcb_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Inventory Components</link:label>
    <link:label id="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Inventory, Current [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock_ab41f504-7ab4-444f-abc0-a15af65f24eb_terseLabel_en-US" xlink:label="lab_form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted average per share discount from the fair value of our common stock on the date of issuance (in dollars per share)</link:label>
    <link:label id="lab_form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock_label_en-US" xlink:label="lab_form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Per Share Discount From Fair Value From Date Of Issuance, Common Stock</link:label>
    <link:label id="lab_form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock_documentation_en-US" xlink:label="lab_form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Per Share Discount From Fair Value From Date Of Issuance, Common Stock</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock" xlink:href="form-20210327.xsd#form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock" xlink:to="lab_form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantiesDisclosuresAbstract_e15a6606-4c9a-4911-a452-9518713014c2_terseLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Warranties Disclosures [Abstract]</link:label>
    <link:label id="lab_us-gaap_ProductWarrantiesDisclosuresAbstract_label_en-US" xlink:label="lab_us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Warranties Disclosures [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantiesDisclosuresAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:to="lab_us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensation_de812a44-7a72-4779-ad12-d07ad29598aa_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock-based compensation expense</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Noncash Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensation" xlink:to="lab_us-gaap_ShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_a3b48711-9179-45e4-82ca-620d958105d0_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Tax withholdings related to net share settlements of equity awards</link:label>
    <link:label id="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payment, Tax Withholding, Share-based Payment Arrangement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DesignatedAsHedgingInstrumentMember_5132952c-2a72-45b6-91be-a018bb5a5bfd_terseLabel_en-US" xlink:label="lab_us-gaap_DesignatedAsHedgingInstrumentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Designated as hedging instrument</link:label>
    <link:label id="lab_us-gaap_DesignatedAsHedgingInstrumentMember_label_en-US" xlink:label="lab_us-gaap_DesignatedAsHedgingInstrumentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Designated as Hedging Instrument [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DesignatedAsHedgingInstrumentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DesignatedAsHedgingInstrumentMember" xlink:to="lab_us-gaap_DesignatedAsHedgingInstrumentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CoverAbstract_85d4f975-010d-4d6d-9345-4f4b8fe7353c_terseLabel_en-US" xlink:label="lab_dei_CoverAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cover page.</link:label>
    <link:label id="lab_dei_CoverAbstract_label_en-US" xlink:label="lab_dei_CoverAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cover [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_CoverAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CoverAbstract" xlink:to="lab_dei_CoverAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillAcquiredDuringPeriod_c9a8e5d7-ffc5-423b-b086-daca80b3a6ca_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAcquiredDuringPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, acquired during period</link:label>
    <link:label id="lab_us-gaap_GoodwillAcquiredDuringPeriod_label_en-US" xlink:label="lab_us-gaap_GoodwillAcquiredDuringPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, Acquired During Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAcquiredDuringPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAcquiredDuringPeriod" xlink:to="lab_us-gaap_GoodwillAcquiredDuringPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_form_ContingentConsiderationCalculationAmountMultipleOfEBIT_fac8d4a0-6eb0-4ce5-ba30-59be0034755d_terseLabel_en-US" xlink:label="lab_form_ContingentConsiderationCalculationAmountMultipleOfEBIT" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contingent consideration, calculation amount, multiple of EBIT</link:label>
    <link:label id="lab_form_ContingentConsiderationCalculationAmountMultipleOfEBIT_label_en-US" xlink:label="lab_form_ContingentConsiderationCalculationAmountMultipleOfEBIT" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contingent Consideration, Calculation Amount, Multiple of EBIT</link:label>
    <link:label id="lab_form_ContingentConsiderationCalculationAmountMultipleOfEBIT_documentation_en-US" xlink:label="lab_form_ContingentConsiderationCalculationAmountMultipleOfEBIT" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contingent Consideration, Calculation Amount, Multiple of EBIT</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_ContingentConsiderationCalculationAmountMultipleOfEBIT" xlink:href="form-20210327.xsd#form_ContingentConsiderationCalculationAmountMultipleOfEBIT"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_ContingentConsiderationCalculationAmountMultipleOfEBIT" xlink:to="lab_form_ContingentConsiderationCalculationAmountMultipleOfEBIT" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_38269ed2-bf45-4a71-ba5f-3b7b5c9cdfa0_negatedLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts payable and accrued liabilities</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accounts Payable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock_18eb6d20-3df0-4764-b925-a7735066ee77_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Gains and Losses Related to Non-designated Derivative Instruments</link:label>
    <link:label id="lab_us-gaap_ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivatives Not Designated as Hedging Instruments [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_6b835488-eaa8-41a7-8105-687c5b6aef03_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Instruments, Gain (Loss) [Table]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Instruments, Gain (Loss) [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IntangibleAssetsDisclosureTextBlock_367335df-5722-4b32-9795-19ed8e77d771_terseLabel_en-US" xlink:label="lab_us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and Intangible Assets</link:label>
    <link:label id="lab_us-gaap_IntangibleAssetsDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intangible Assets Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:to="lab_us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TaxesPayableCurrentAndNoncurrent_3f5990d7-d323-45d0-bccc-a54420743613_terseLabel_en-US" xlink:label="lab_us-gaap_TaxesPayableCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued income and other taxes</link:label>
    <link:label id="lab_us-gaap_TaxesPayableCurrentAndNoncurrent_label_en-US" xlink:label="lab_us-gaap_TaxesPayableCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Taxes Payable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TaxesPayableCurrentAndNoncurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TaxesPayableCurrentAndNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TaxesPayableCurrentAndNoncurrent" xlink:to="lab_us-gaap_TaxesPayableCurrentAndNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillLineItems_77fa42b2-5eab-4224-919c-6433acea1ccb_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill [Line Items]</link:label>
    <link:label id="lab_us-gaap_GoodwillLineItems_label_en-US" xlink:label="lab_us-gaap_GoodwillLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillLineItems" xlink:to="lab_us-gaap_GoodwillLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionLineItems_d70c268e-bfff-4dff-a7da-da51119a55e8_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Lease, Description [Line Items]</link:label>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionLineItems_label_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Lease, Description [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeLeaseDescriptionLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="lab_us-gaap_LesseeLeaseDescriptionLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_cb94b4be-3939-4a83-a1f4-50ef7077963a_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Leases [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeasesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeasesTextBlock" xlink:to="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueDisclosuresAbstract_b95c045c-ecbf-4502-937c-de14a512e816_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Disclosures [Abstract]</link:label>
    <link:label id="lab_us-gaap_FairValueDisclosuresAbstract_label_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Disclosures [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract" xlink:to="lab_us-gaap_FairValueDisclosuresAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInDeferredRevenue_d9e0529a-3f0a-41bc-bf46-f0572bd5fe81_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred revenues</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInDeferredRevenue_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Deferred Revenue</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:to="lab_us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:type="arc" order="1"/>
    <link:label id="lab_country_TW_30cccc5f-31e9-455a-bc77-326ac601ba21_terseLabel_en-US" xlink:label="lab_country_TW" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Taiwan</link:label>
    <link:label id="lab_country_TW_label_en-US" xlink:label="lab_country_TW" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">TAIWAN, PROVINCE OF CHINA</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_country_TW" xlink:href="https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd#country_TW"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_TW" xlink:to="lab_country_TW" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CustomerRelationshipsMember_81f0fe56-26ef-4342-adc9-c88b3ee033b4_terseLabel_en-US" xlink:label="lab_us-gaap_CustomerRelationshipsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer relationships</link:label>
    <link:label id="lab_us-gaap_CustomerRelationshipsMember_label_en-US" xlink:label="lab_us-gaap_CustomerRelationshipsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer Relationships [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CustomerRelationshipsMember" xlink:to="lab_us-gaap_CustomerRelationshipsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_form_IntelMember_95951349-8475-4699-9f20-1914aec736eb_terseLabel_en-US" xlink:label="lab_form_IntelMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intel Corporation</link:label>
    <link:label id="lab_form_IntelMember_label_en-US" xlink:label="lab_form_IntelMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intel [Member]</link:label>
    <link:label id="lab_form_IntelMember_documentation_en-US" xlink:label="lab_form_IntelMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intel [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_IntelMember" xlink:href="form-20210327.xsd#form_IntelMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_IntelMember" xlink:to="lab_form_IntelMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskByBenchmarkAxis_05050be2-7b69-4914-b2a6-1b343ad161de_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Axis]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskByBenchmarkAxis_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_35cf0ee1-1147-4d13-a68d-2a645106cceb_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of revenues</link:label>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_label_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of Goods and Services Sold</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsAndServicesSold" xlink:to="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_237ea6e4-cae2-4f31-b8a3-ff368eefb68c_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:to="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour_3c1cffe0-a626-4e48-82d4-9816f61d2f4b_terseLabel_en-US" xlink:label="lab_form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Thereafter</link:label>
    <link:label id="lab_form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour_label_en-US" xlink:label="lab_form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, after Year Four</link:label>
    <link:label id="lab_form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour_documentation_en-US" xlink:label="lab_form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, after Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour" xlink:href="form-20210327.xsd#form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour" xlink:to="lab_form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_2042a218-8793-4402-949e-dac3fa778d5e_terseLabel_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_label_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementEquityComponentsAxis" xlink:to="lab_us-gaap_StatementEquityComponentsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_95e79e17-3c25-4f00-9be9-d47ae922d089_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrealized gains (losses) on derivative instruments</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification and Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedStockMember_9946e127-ca0c-4951-99c4-22d9dbd5654d_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted stock units</link:label>
    <link:label id="lab_us-gaap_RestrictedStockMember_label_en-US" xlink:label="lab_us-gaap_RestrictedStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedStockMember" xlink:to="lab_us-gaap_RestrictedStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyAccrualPayments_2914f2dd-5e98-462e-b785-b1597dba361e_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualPayments" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Settlements</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyAccrualPayments_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualPayments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Standard and Extended Product Warranty Accrual, Decrease for Payments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualPayments" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyAccrualPayments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrualPayments" xlink:to="lab_us-gaap_ProductWarrantyAccrualPayments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_b60cc1f3-73c9-4472-977d-f14c9fd2ce44_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryFinishedGoodsNetOfReserves_c32d6a74-87d5-432a-8ac7-8c5d1827a11e_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finished goods</link:label>
    <link:label id="lab_us-gaap_InventoryFinishedGoodsNetOfReserves_label_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Finished Goods, Net of Reserves</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:to="lab_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MinimumMember_0d23b5a0-c7fc-4294-893c-f12d1d061d3d_terseLabel_en-US" xlink:label="lab_srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Minimum</link:label>
    <link:label id="lab_srt_MinimumMember_label_en-US" xlink:label="lab_srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Minimum [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MinimumMember" xlink:to="lab_srt_MinimumMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_1137bcd0-18e7-4b54-8cbc-080536d16fff_totalLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Tangible assets acquired</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LandMember_b5e729d2-47dd-473b-b594-bb3080aa8c5a_terseLabel_en-US" xlink:label="lab_us-gaap_LandMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Land</link:label>
    <link:label id="lab_us-gaap_LandMember_label_en-US" xlink:label="lab_us-gaap_LandMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Land [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LandMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LandMember" xlink:to="lab_us-gaap_LandMember" xlink:type="arc" order="1"/>
    <link:label id="lab_form_FoundryLogicProductGroupMember_e4c96919-f150-4dcd-8639-124342d9c164_terseLabel_en-US" xlink:label="lab_form_FoundryLogicProductGroupMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foundry &amp; Logic</link:label>
    <link:label id="lab_form_FoundryLogicProductGroupMember_label_en-US" xlink:label="lab_form_FoundryLogicProductGroupMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foundry &amp; Logic Product Group [Member]</link:label>
    <link:label id="lab_form_FoundryLogicProductGroupMember_documentation_en-US" xlink:label="lab_form_FoundryLogicProductGroupMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foundry &amp; Logic Product Group [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_FoundryLogicProductGroupMember" xlink:href="form-20210327.xsd#form_FoundryLogicProductGroupMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_FoundryLogicProductGroupMember" xlink:to="lab_form_FoundryLogicProductGroupMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_611759ed-d27e-42ea-98fd-4110a6024aff_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_20d3bf76-d79f-4266-9ecd-fc89f5db9a24_negatedLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less: current portion</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyAccrual_49bc30fa-d9a4-4350-9f9d-5ddcb52a51f1_periodStartLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrual" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at beginning of period</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyAccrual_e289080f-aea7-474f-943f-7251472a75ec_periodEndLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrual" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at end of period</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyAccrual_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrual" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Standard and Extended Product Warranty Accrual</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrual" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyAccrual"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrual" xlink:to="lab_us-gaap_ProductWarrantyAccrual" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_f038aba9-7e04-482a-818c-2a7720e63cf8_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized Expense</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_EuropeMember_241009a5-b574-4499-83fc-e3b1ae1f5499_terseLabel_en-US" xlink:label="lab_srt_EuropeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Europe</link:label>
    <link:label id="lab_srt_EuropeMember_label_en-US" xlink:label="lab_srt_EuropeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Europe [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EuropeMember" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_EuropeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_EuropeMember" xlink:to="lab_srt_EuropeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_b65fdb11-be2b-498a-b2be-695fb8d79d90_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Awards canceled (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossLineItems_24026eff-c0bf-4901-aa4c-182f3fa1c61b_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Instruments, Gain (Loss) [Line Items]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossLineItems_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Instruments, Gain (Loss) [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:to="lab_us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityInteractiveDataCurrent_935e6120-ec59-481e-b874-6d08a5a00dab_terseLabel_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:label id="lab_dei_EntityInteractiveDataCurrent_label_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityInteractiveDataCurrent" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityInteractiveDataCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityInteractiveDataCurrent" xlink:to="lab_dei_EntityInteractiveDataCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_country_US_6f828103-dedb-4f83-9536-2914860a68a9_terseLabel_en-US" xlink:label="lab_country_US" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">United States</link:label>
    <link:label id="lab_country_US_label_en-US" xlink:label="lab_country_US" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">UNITED STATES</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_country_US" xlink:href="https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd#country_US"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_US" xlink:to="lab_country_US" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CorporateBondSecuritiesMember_9bdb0c11-bcdb-4cd6-984f-15d60d778be8_terseLabel_en-US" xlink:label="lab_us-gaap_CorporateBondSecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Corporate bonds</link:label>
    <link:label id="lab_us-gaap_CorporateBondSecuritiesMember_label_en-US" xlink:label="lab_us-gaap_CorporateBondSecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Corporate Bond Securities [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CorporateBondSecuritiesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CorporateBondSecuritiesMember" xlink:to="lab_us-gaap_CorporateBondSecuritiesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_ea715f0b-6d12-435f-bc4f-2ae9c04216be_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Options exercised (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueDisclosuresTextBlock_e79d8a90-25e3-4553-af12-34588009269c_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value and Derivative Instruments</link:label>
    <link:label id="lab_us-gaap_FairValueDisclosuresTextBlock_label_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Disclosures [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueDisclosuresTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueDisclosuresTextBlock" xlink:to="lab_us-gaap_FairValueDisclosuresTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_95f9176e-08de-442c-a10b-df621180ac51_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders&#8217; Equity and Stock-Based Compensation</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' Equity Note Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:to="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_0d1ea1b8-ee9b-499d-a8d4-ceb33fd8bd94_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Stock Option Activity</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Option, Activity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableMember_1d9b4d16-bcc0-44f3-9977-1e2b37a2c047_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableMember_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableMember" xlink:to="lab_us-gaap_AccountsReceivableMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities_6236a0b5-608f-45d5-8bc6-52ed02a5e220_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from maturities and sales of marketable securities</link:label>
    <link:label id="lab_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities_label_en-US" xlink:label="lab_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Maturities, Prepayments and Calls of Debt Securities, Available-for-sale</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities" xlink:to="lab_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativesFairValueLineItems_71a39045-1973-4af8-b814-5315c826e989_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativesFairValueLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivatives, Fair Value [Line Items]</link:label>
    <link:label id="lab_us-gaap_DerivativesFairValueLineItems_label_en-US" xlink:label="lab_us-gaap_DerivativesFairValueLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivatives, Fair Value [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativesFairValueLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativesFairValueLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativesFairValueLineItems" xlink:to="lab_us-gaap_DerivativesFairValueLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InterestRateSwapMember_d2fb93b6-fb5b-4eb9-9747-0970d4fb3606_terseLabel_en-US" xlink:label="lab_us-gaap_InterestRateSwapMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest rate swap derivative contracts</link:label>
    <link:label id="lab_us-gaap_InterestRateSwapMember_a7705677-c9f5-40ce-adf3-bfbe80ac4fc1_verboseLabel_en-US" xlink:label="lab_us-gaap_InterestRateSwapMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest rate contracts</link:label>
    <link:label id="lab_us-gaap_InterestRateSwapMember_label_en-US" xlink:label="lab_us-gaap_InterestRateSwapMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Rate Swap [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestRateSwapMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InterestRateSwapMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestRateSwapMember" xlink:to="lab_us-gaap_InterestRateSwapMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_531577ac-cc8b-4953-ab8d-0046e2ad7175_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Remainder of 2021</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Remainder of Fiscal Year</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:type="arc" order="1"/>
    <link:label id="lab_form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets_91a3dde4-61f6-49f7-9a7b-f6ac2868266e_terseLabel_en-US" xlink:label="lab_form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease, right of use assets</link:label>
    <link:label id="lab_form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets_label_en-US" xlink:label="lab_form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Operating Lease, Right-Of-Use Assets</link:label>
    <link:label id="lab_form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets_documentation_en-US" xlink:label="lab_form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Operating Lease, Right-Of-Use Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets" xlink:href="form-20210327.xsd#form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets" xlink:to="lab_form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_NameOfMajorCustomerDomain_9ee75a24-3c82-4422-84d3-8ad2f1e8fe07_terseLabel_en-US" xlink:label="lab_srt_NameOfMajorCustomerDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Name of Major Customer [Domain]</link:label>
    <link:label id="lab_srt_NameOfMajorCustomerDomain_label_en-US" xlink:label="lab_srt_NameOfMajorCustomerDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_NameOfMajorCustomerDomain" xlink:to="lab_srt_NameOfMajorCustomerDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiscalPeriod_2a146d1b-8d87-49c3-812a-404881e5f4c9_terseLabel_en-US" xlink:label="lab_us-gaap_FiscalPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fiscal Year</link:label>
    <link:label id="lab_us-gaap_FiscalPeriod_label_en-US" xlink:label="lab_us-gaap_FiscalPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fiscal Period, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiscalPeriod" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiscalPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiscalPeriod" xlink:to="lab_us-gaap_FiscalPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalCommonStock_c926ac6b-ba86-4b17-9866-1ed3b5cf94eb_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional paid-in capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalCommonStock_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional Paid in Capital, Common Stock</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:to="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityRegistrantName_0d441911-632b-4f7c-97c5-25700a32582a_terseLabel_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:label id="lab_dei_EntityRegistrantName_label_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityRegistrantName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityRegistrantName" xlink:to="lab_dei_EntityRegistrantName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeTable_0610560f-1378-436b-88a6-0bae574d76c0_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative [Table]</link:label>
    <link:label id="lab_us-gaap_DerivativeTable_label_en-US" xlink:label="lab_us-gaap_DerivativeTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeTable" xlink:to="lab_us-gaap_DerivativeTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionLineItems_f9dba2ee-011e-4ab9-b0d3-be6120f63b0e_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition [Line Items]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionLineItems_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems" xlink:to="lab_us-gaap_BusinessAcquisitionLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfStockholdersEquityAbstract_2b36e727-7f45-4747-8b50-0bd23185bf0e_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfStockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_d9355d6c-1e18-454f-a39a-192050eade4b_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease, weighted average discount rate</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Weighted Average Discount Rate, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedEmployeeBenefitsCurrent_34546991-f7c0-44eb-bbf2-96538b34a170_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedEmployeeBenefitsCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employee stock purchase plan contributions withheld</link:label>
    <link:label id="lab_us-gaap_AccruedEmployeeBenefitsCurrent_label_en-US" xlink:label="lab_us-gaap_AccruedEmployeeBenefitsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Employee Benefits, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedEmployeeBenefitsCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedEmployeeBenefitsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedEmployeeBenefitsCurrent" xlink:to="lab_us-gaap_AccruedEmployeeBenefitsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskLineItems_f31cdd6e-2ac3-4a3f-8fe1-d7f197808a7d_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk [Line Items]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskLineItems_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskLineItems" xlink:to="lab_us-gaap_ConcentrationRiskLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_form_FlashProductGroupMember_eeaab85e-7fa9-4816-b782-8821f59975c4_terseLabel_en-US" xlink:label="lab_form_FlashProductGroupMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Flash</link:label>
    <link:label id="lab_form_FlashProductGroupMember_label_en-US" xlink:label="lab_form_FlashProductGroupMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Flash Product Group [Member]</link:label>
    <link:label id="lab_form_FlashProductGroupMember_documentation_en-US" xlink:label="lab_form_FlashProductGroupMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Flash Product Group [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_FlashProductGroupMember" xlink:href="form-20210327.xsd#form_FlashProductGroupMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_FlashProductGroupMember" xlink:to="lab_form_FlashProductGroupMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber_c72c5b82-95b4-4319-8814-a5716189ea50_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vested and expected to vest (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Exercisable, Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_b2c11702-b7ed-4d06-ba66-2c3de6620257_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Exercise Price</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NumberOfReportableSegments_85921422-fd7a-46fd-99aa-d4f13dff091b_terseLabel_en-US" xlink:label="lab_us-gaap_NumberOfReportableSegments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of reportable segments</link:label>
    <link:label id="lab_us-gaap_NumberOfReportableSegments_label_en-US" xlink:label="lab_us-gaap_NumberOfReportableSegments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of Reportable Segments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NumberOfReportableSegments" xlink:to="lab_us-gaap_NumberOfReportableSegments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock_1c37bad8-fca3-49e9-9624-0770a7676868_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Unrecognized Stock-based Compensation</link:label>
    <link:label id="lab_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Nonvested Award, Cost [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued_b0d2fb65-96d8-439b-97f8-022476454398_terseLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accruals</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Standard and Extended Product Warranty Accrual, Increase for Warranties Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyAccrualWarrantiesIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:to="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ConsolidationItemsAxis_17641479-75f3-46fe-bb60-7c560ae96791_terseLabel_en-US" xlink:label="lab_srt_ConsolidationItemsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation Items [Axis]</link:label>
    <link:label id="lab_srt_ConsolidationItemsAxis_label_en-US" xlink:label="lab_srt_ConsolidationItemsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consolidation Items [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ConsolidationItemsAxis" xlink:to="lab_srt_ConsolidationItemsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpenseMember_6bf0dab4-9885-41f2-a217-14f733768d62_terseLabel_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpenseMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Research and development</link:label>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpenseMember_label_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpenseMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Research and Development Expense [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpenseMember" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpenseMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NondesignatedMember_fce63500-6d74-4072-a220-6e1a3ea2c7fa_verboseLabel_en-US" xlink:label="lab_us-gaap_NondesignatedMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivatives Not Designated as Hedging Instruments</link:label>
    <link:label id="lab_us-gaap_NondesignatedMember_label_en-US" xlink:label="lab_us-gaap_NondesignatedMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Not Designated as Hedging Instrument [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NondesignatedMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NondesignatedMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NondesignatedMember" xlink:to="lab_us-gaap_NondesignatedMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_30c17bb3-baa4-4d37-8c22-dcf4617bd6c4_terseLabel_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_label_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityIncorporationStateCountryCode" xlink:to="lab_dei_EntityIncorporationStateCountryCode" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillImpairmentLoss_5636a6e2-aae5-40ff-8557-3d7bd8868ef6_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillImpairmentLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, impairment loss</link:label>
    <link:label id="lab_us-gaap_GoodwillImpairmentLoss_label_en-US" xlink:label="lab_us-gaap_GoodwillImpairmentLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, Impairment Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillImpairmentLoss" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillImpairmentLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillImpairmentLoss" xlink:to="lab_us-gaap_GoodwillImpairmentLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_form_HighPrecisionDevicesIncMember_cb70ad79-da7d-4292-9b82-76455a040d4a_terseLabel_en-US" xlink:label="lab_form_HighPrecisionDevicesIncMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">High Precision Devices, Inc.</link:label>
    <link:label id="lab_form_HighPrecisionDevicesIncMember_label_en-US" xlink:label="lab_form_HighPrecisionDevicesIncMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">High Precision Devices, Inc. [Member]</link:label>
    <link:label id="lab_form_HighPrecisionDevicesIncMember_documentation_en-US" xlink:label="lab_form_HighPrecisionDevicesIncMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">High Precision Devices, Inc.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_HighPrecisionDevicesIncMember" xlink:href="form-20210327.xsd#form_HighPrecisionDevicesIncMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_HighPrecisionDevicesIncMember" xlink:to="lab_form_HighPrecisionDevicesIncMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_42478a6b-8c9f-4ba2-bf57-2bc864a0445b_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable, net of allowance for doubtful accounts of $232 and $248</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, after Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableNetCurrent" xlink:to="lab_us-gaap_AccountsReceivableNetCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_97b14450-86d7-43ad-b4b8-069175e3e3ce_totalLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total minimum lease payments</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedCashNoncurrent_5c760b47-f780-4ee2-aa05-f41b95af9b51_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedCashNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted cash</link:label>
    <link:label id="lab_us-gaap_RestrictedCashNoncurrent_label_en-US" xlink:label="lab_us-gaap_RestrictedCashNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Cash, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashNoncurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedCashNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedCashNoncurrent" xlink:to="lab_us-gaap_RestrictedCashNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross_0704cf70-0ea2-475b-a35c-53f6d6ef6a36_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of common stock pursuant to exercise of options (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shares Issued, Shares, Share-based Payment Arrangement, before Forfeiture</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressPostalZipCode_7e48ca53-147a-4d14-9ef3-6f79ff597601_terseLabel_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:label id="lab_dei_EntityAddressPostalZipCode_label_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressPostalZipCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressPostalZipCode" xlink:to="lab_dei_EntityAddressPostalZipCode" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Goodwill_cce63e76-4384-4cdd-8503-776be88f2f78_terseLabel_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill</link:label>
    <link:label id="lab_us-gaap_Goodwill_dc385d99-8fcf-4267-ba8e-ef20b8211ea5_periodStartLabel_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, beginning balance</link:label>
    <link:label id="lab_us-gaap_Goodwill_c15b4074-5023-4dbe-b10d-2442e21fd96b_periodEndLabel_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill, ending balance</link:label>
    <link:label id="lab_us-gaap_Goodwill_label_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Goodwill"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Goodwill" xlink:to="lab_us-gaap_Goodwill" xlink:type="arc" order="1"/>
    <link:label id="lab_form_SystemsProductGroupMember_8bc3965f-4947-4fb2-8b82-347148eadaf0_terseLabel_en-US" xlink:label="lab_form_SystemsProductGroupMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Systems</link:label>
    <link:label id="lab_form_SystemsProductGroupMember_label_en-US" xlink:label="lab_form_SystemsProductGroupMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Systems Product Group [Member]</link:label>
    <link:label id="lab_form_SystemsProductGroupMember_documentation_en-US" xlink:label="lab_form_SystemsProductGroupMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Systems Product Group [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_SystemsProductGroupMember" xlink:href="form-20210327.xsd#form_SystemsProductGroupMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_SystemsProductGroupMember" xlink:to="lab_form_SystemsProductGroupMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentTransitionReport_eb86ef80-46be-4146-b884-27f0877e5769_terseLabel_en-US" xlink:label="lab_dei_DocumentTransitionReport" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Transition Report</link:label>
    <link:label id="lab_dei_DocumentTransitionReport_label_en-US" xlink:label="lab_dei_DocumentTransitionReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Transition Report</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentTransitionReport" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentTransitionReport"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentTransitionReport" xlink:to="lab_dei_DocumentTransitionReport" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent_95d6630d-1105-4ea3-8a2a-d9af17fb91ea_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued contingent consideration</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Contingent Consideration, Liability, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent" xlink:to="lab_us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_fab0b4ef-4230-4ad6-86e9-31ef3e987c4d_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis_6ba098f5-3352-4b43-ac01-75abba419e9c_terseLabel_en-US" xlink:label="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Timing of Transfer of Good or Service [Axis]</link:label>
    <link:label id="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis_label_en-US" xlink:label="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Timing of Transfer of Good or Service [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:to="lab_us-gaap_TimingOfTransferOfGoodOrServiceAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_d1da6429-e814-4818-8ddc-02ef5aeb617b_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted cash</link:label>
    <link:label id="lab_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_label_en-US" xlink:label="lab_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Cash and Cash Equivalents, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue" xlink:to="lab_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueInputsLevel2Member_d7607f8e-1b1f-4d30-9c1f-07422f2e84b0_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel2Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Level 2</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel2Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel2Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Inputs, Level 2 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel2Member" xlink:to="lab_us-gaap_FairValueInputsLevel2Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherDeferredLiability_3673f6cb-aa22-4d58-aef4-d82dc30963ca_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherDeferredLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other liabilities</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherDeferredLiability_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherDeferredLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Other Deferred Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherDeferredLiability" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInOtherDeferredLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOtherDeferredLiability" xlink:to="lab_us-gaap_IncreaseDecreaseInOtherDeferredLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShortMember_4e7fd120-87ac-41e8-a6e8-6be075a80ff3_terseLabel_en-US" xlink:label="lab_us-gaap_ShortMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sell</link:label>
    <link:label id="lab_us-gaap_ShortMember_label_en-US" xlink:label="lab_us-gaap_ShortMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShortMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortMember" xlink:to="lab_us-gaap_ShortMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentQuarterlyReport_626fd535-669d-4d30-a52e-bf33e94539f4_terseLabel_en-US" xlink:label="lab_dei_DocumentQuarterlyReport" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Quarterly Report</link:label>
    <link:label id="lab_dei_DocumentQuarterlyReport_label_en-US" xlink:label="lab_dei_DocumentQuarterlyReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Quarterly Report</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentQuarterlyReport" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentQuarterlyReport"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentQuarterlyReport" xlink:to="lab_dei_DocumentQuarterlyReport" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTextBlock_17fafefc-aa29-462d-9901-d4eb1d0c2d9a_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill by Reportable Segments</link:label>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Goodwill [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfGoodwillTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfGoodwillTextBlock" xlink:to="lab_us-gaap_ScheduleOfGoodwillTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_01be1ae3-2045-4401-beb2-ee332a2ed09d_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value by Asset Class [Domain]</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Asset Class [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:to="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityAbstract_5bdcbea6-3aff-45df-a6d6-6cbb791bda79_terseLabel_en-US" xlink:label="lab_us-gaap_EquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity [Abstract]</link:label>
    <link:label id="lab_us-gaap_EquityAbstract_label_en-US" xlink:label="lab_us-gaap_EquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityAbstract" xlink:to="lab_us-gaap_EquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsFairValueDisclosure_1514651b-ba46-4ad5-aad6-ee8cd13eecea_totalLabel_en-US" xlink:label="lab_us-gaap_AssetsFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total assets</link:label>
    <link:label id="lab_us-gaap_AssetsFairValueDisclosure_d2cc14ae-057f-4c2b-8d43-b8469c7439af_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets measured at fair value on non-recurring basis</link:label>
    <link:label id="lab_us-gaap_AssetsFairValueDisclosure_label_en-US" xlink:label="lab_us-gaap_AssetsFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets, Fair Value Disclosure</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsFairValueDisclosure" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsFairValueDisclosure"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsFairValueDisclosure" xlink:to="lab_us-gaap_AssetsFairValueDisclosure" xlink:type="arc" order="1"/>
    <link:label id="lab_form_SensorMarketsOperatingTemperature_d57fed87-90c1-40e4-9bf0-c7822e9ce651_terseLabel_en-US" xlink:label="lab_form_SensorMarketsOperatingTemperature" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sensor markets, operating temperature</link:label>
    <link:label id="lab_form_SensorMarketsOperatingTemperature_label_en-US" xlink:label="lab_form_SensorMarketsOperatingTemperature" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sensor Markets, Operating Temperature</link:label>
    <link:label id="lab_form_SensorMarketsOperatingTemperature_documentation_en-US" xlink:label="lab_form_SensorMarketsOperatingTemperature" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sensor Markets, Operating Temperature</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_SensorMarketsOperatingTemperature" xlink:href="form-20210327.xsd#form_SensorMarketsOperatingTemperature"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_SensorMarketsOperatingTemperature" xlink:to="lab_form_SensorMarketsOperatingTemperature" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CustomerConcentrationRiskMember_7968664b-816b-4b75-ba80-a960d293665f_terseLabel_en-US" xlink:label="lab_us-gaap_CustomerConcentrationRiskMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer Concentration Risk</link:label>
    <link:label id="lab_us-gaap_CustomerConcentrationRiskMember_label_en-US" xlink:label="lab_us-gaap_CustomerConcentrationRiskMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer Concentration Risk [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CustomerConcentrationRiskMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CustomerConcentrationRiskMember" xlink:to="lab_us-gaap_CustomerConcentrationRiskMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeContractTypeDomain_04f30724-a5a0-4679-84d4-2f32c4b7dd93_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeContractTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Contract [Domain]</link:label>
    <link:label id="lab_us-gaap_DerivativeContractTypeDomain_label_en-US" xlink:label="lab_us-gaap_DerivativeContractTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative Contract [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeContractTypeDomain" xlink:to="lab_us-gaap_DerivativeContractTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_3d3bcb77-bc31-413c-97ec-a8351c519fb4_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Estimated Amortization of Intangible Assets</link:label>
    <link:label id="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:to="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_90f48625-dfb9-4a01-a3bb-b541ce28a759_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Diluted (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_b24778c8-226a-4dc7-8f54-4f3bb9a7fe7f_verboseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted-average shares used in computing diluted net income per share (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_b6ec1ba6-598c-47a9-9a8c-286353fc1412_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basic (In dollars per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share, Basic</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasic" xlink:to="lab_us-gaap_EarningsPerShareBasic" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSoldAmortization_ca0d03ac-a1b0-486a-af1e-769b038867d3_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSoldAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization</link:label>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSoldAmortization_label_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSoldAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost, Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfGoodsAndServicesSoldAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization" xlink:to="lab_us-gaap_CostOfGoodsAndServicesSoldAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityFileNumber_b3350f96-bbf4-48c2-b002-9db20212948a_terseLabel_en-US" xlink:label="lab_dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity File Number</link:label>
    <link:label id="lab_dei_EntityFileNumber_label_en-US" xlink:label="lab_dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity File Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityFileNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFileNumber" xlink:to="lab_dei_EntityFileNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_5a02eb5d-429c-4142-a0f7-f4c72ae0865f_negatedLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Awards canceled (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_127e1f4d-be70-4298-80fc-a44ed2f57671_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease, weighted average remaining lease term</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Weighted Average Remaining Lease Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract_c5e4a0b7-9c35-416e-9dbc-cdf82a616504_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash flows from operating activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities, Continuing Operations [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_c4f23391-1aea-4651-9744-d5b12af1510c_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash used in financing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RepaymentsOfLongTermDebt_94881e3f-a6a9-479c-b1b2-abc64c5043be_negatedLabel_en-US" xlink:label="lab_us-gaap_RepaymentsOfLongTermDebt" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Principal repayments on term loans</link:label>
    <link:label id="lab_us-gaap_RepaymentsOfLongTermDebt_label_en-US" xlink:label="lab_us-gaap_RepaymentsOfLongTermDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Repayments of Long-term Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLongTermDebt" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RepaymentsOfLongTermDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RepaymentsOfLongTermDebt" xlink:to="lab_us-gaap_RepaymentsOfLongTermDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligation_3a2906e9-8ed0-40c7-8f17-51d41e8df2d9_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Performance obligations</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligation_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligation" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligation" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_01e87e12-c918-41c8-9b86-bdb42c7d0351_terseLabel_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total stock-based compensation</link:label>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_label_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllocatedShareBasedCompensationExpense" xlink:to="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_1dbf70fd-f928-4c44-bc00-9cc5f48ddb6c_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of common stock under the Employee Stock Purchase Plan</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Value, Employee Stock Purchase Plan</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockValue_df8e504a-d193-4295-b96b-7ee2a4f4049e_verboseLabel_en-US" xlink:label="lab_us-gaap_CommonStockValue" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, $0.001 par value</link:label>
    <link:label id="lab_us-gaap_CommonStockValue_label_en-US" xlink:label="lab_us-gaap_CommonStockValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Value, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockValue" xlink:to="lab_us-gaap_CommonStockValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_0ee9001e-f800-4ca8-8d0c-57118d6109bc_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_50a09f98-a42f-475e-8968-7e3ddb652bc3_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets [Line Items]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentFiscalYearFocus_e277459e-7a2f-4490-940b-b0d6f8960986_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalYearFocus_label_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentFiscalYearFocus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalYearFocus" xlink:to="lab_dei_DocumentFiscalYearFocus" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_d42e9f99-d0aa-4733-a4e0-32e7f046a7fb_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2023</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommercialPaperMember_14c850bf-22e8-47f8-ac68-e4a3be801917_terseLabel_en-US" xlink:label="lab_us-gaap_CommercialPaperMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commercial paper</link:label>
    <link:label id="lab_us-gaap_CommercialPaperMember_label_en-US" xlink:label="lab_us-gaap_CommercialPaperMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commercial Paper [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommercialPaperMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommercialPaperMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommercialPaperMember" xlink:to="lab_us-gaap_CommercialPaperMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedCashCurrent_09af8150-a59d-459e-a60f-5dd2754bca82_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedCashCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted cash, current</link:label>
    <link:label id="lab_us-gaap_RestrictedCashCurrent_label_en-US" xlink:label="lab_us-gaap_RestrictedCashCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Cash, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedCashCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedCashCurrent" xlink:to="lab_us-gaap_RestrictedCashCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_5782c104-8ea0-4327-ad79-6a6b4548e7d6_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercisable, aggregate intrinsic value</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Intrinsic Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtCurrent_d526d26a-5b7c-4d18-b12b-cc47bc5442f8_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current portion of term loans, net of unamortized issuance costs</link:label>
    <link:label id="lab_us-gaap_LongTermDebtCurrent_label_en-US" xlink:label="lab_us-gaap_LongTermDebtCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Debt, Current Maturities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermDebtCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtCurrent" xlink:to="lab_us-gaap_LongTermDebtCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCurrentReportingStatus_ac9e42e4-74f0-4ed3-b52e-97633f25e25e_terseLabel_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:label id="lab_dei_EntityCurrentReportingStatus_label_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCurrentReportingStatus" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityCurrentReportingStatus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCurrentReportingStatus" xlink:to="lab_dei_EntityCurrentReportingStatus" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_TWD_6e6d2d36-6f06-4f05-b90b-ce7f0caa9d31_terseLabel_en-US" xlink:label="lab_currency_TWD" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Taiwan Dollar</link:label>
    <link:label id="lab_currency_TWD_label_en-US" xlink:label="lab_currency_TWD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Taiwan, New Dollars</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_TWD" xlink:href="https://xbrl.sec.gov/currency/2020/currency-2020-01-31.xsd#currency_TWD"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_TWD" xlink:to="lab_currency_TWD" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PositionAxis_2839d497-cea9-4f56-9961-0e2fda242e71_terseLabel_en-US" xlink:label="lab_us-gaap_PositionAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Position [Axis]</link:label>
    <link:label id="lab_us-gaap_PositionAxis_label_en-US" xlink:label="lab_us-gaap_PositionAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Position [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PositionAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PositionAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PositionAxis" xlink:to="lab_us-gaap_PositionAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_AllCurrenciesDomain_74a902bf-bb48-455f-af50-35a33dfe89d9_terseLabel_en-US" xlink:label="lab_currency_AllCurrenciesDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">All Currencies [Domain]</link:label>
    <link:label id="lab_currency_AllCurrenciesDomain_label_en-US" xlink:label="lab_currency_AllCurrenciesDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">All Currencies [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_AllCurrenciesDomain" xlink:href="https://xbrl.sec.gov/currency/2020/currency-2020-01-31.xsd#currency_AllCurrenciesDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_AllCurrenciesDomain" xlink:to="lab_currency_AllCurrenciesDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_bf3ceabf-4c07-44b8-884a-384b5f6e082e_totalLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total tangible assets acquired and liabilities assumed</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_4fec86d5-0196-4bf0-85d9-3841d96090b5_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Awards granted (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_USTreasuryBillSecuritiesMember_57142851-ffce-4c64-9a16-09ca94dfea51_terseLabel_en-US" xlink:label="lab_us-gaap_USTreasuryBillSecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">U.S. treasuries</link:label>
    <link:label id="lab_us-gaap_USTreasuryBillSecuritiesMember_label_en-US" xlink:label="lab_us-gaap_USTreasuryBillSecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">US Treasury Bill Securities [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USTreasuryBillSecuritiesMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_USTreasuryBillSecuritiesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_USTreasuryBillSecuritiesMember" xlink:to="lab_us-gaap_USTreasuryBillSecuritiesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryDisclosureAbstract_304942c9-35c3-4979-a15a-9ef9a137f6bb_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_InventoryDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_InventoryDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryDisclosureAbstract" xlink:to="lab_us-gaap_InventoryDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_229bd862-a1b1-46af-ab4f-0792f07b36f6_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, shares issued (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Shares, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesIssued" xlink:to="lab_us-gaap_CommonStockSharesIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_355d0f9d-cc4c-4e56-a702-d0a207081656_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and Cash Equivalents, at Carrying Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ForeignExchangeForwardMember_31a8bce4-368e-44a0-9108-cf1440fee25b_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignExchangeForwardMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foreign exchange forward contracts</link:label>
    <link:label id="lab_us-gaap_ForeignExchangeForwardMember_label_en-US" xlink:label="lab_us-gaap_ForeignExchangeForwardMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foreign Exchange Forward [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignExchangeForwardMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ForeignExchangeForwardMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignExchangeForwardMember" xlink:to="lab_us-gaap_ForeignExchangeForwardMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_ca4e741e-b0cc-4728-9462-790a79dcf8d3_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Present value of net minimum lease payments</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiability" xlink:to="lab_us-gaap_OperatingLeaseLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtNoncurrent_d2e098e9-7d43-4b94-9738-3679085f4e20_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Term loans, less current portion, net of unamortized issuance costs</link:label>
    <link:label id="lab_us-gaap_LongTermDebtNoncurrent_label_en-US" xlink:label="lab_us-gaap_LongTermDebtNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Debt, Excluding Current Maturities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtNoncurrent" xlink:to="lab_us-gaap_LongTermDebtNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingAbstract_524971bd-22a9-4448-b3a9-6766c840653d_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting [Abstract]</link:label>
    <link:label id="lab_us-gaap_SegmentReportingAbstract_label_en-US" xlink:label="lab_us-gaap_SegmentReportingAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingAbstract" xlink:to="lab_us-gaap_SegmentReportingAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_7edcc6fc-f301-4be8-b6e6-f9f6d64df7b9_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Accounts Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_52798339-80fd-4240-ae3f-271fee99e22b_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Comprehensive Income [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Comprehensive Income [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquity_f830bbb0-f9a5-4358-a059-ea3e2f0351f1_totalLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total stockholders&#8217; equity</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_4b8a9521-d0f9-4636-8de3-8571ed926975_periodStartLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Beginning balance</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_c939956c-6637-4422-8ea6-6c8916b3054b_periodEndLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Ending balance</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_label_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' Equity Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="lab_us-gaap_StockholdersEquity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationConsiderationTransferred1_843d9952-88c7-428f-85eb-6ab18bf2115a_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consideration transferred</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationConsiderationTransferred1_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Consideration Transferred</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:to="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:type="arc" order="1"/>
    <link:label id="lab_form_TaiwanSemiconductorManufacturingCoLTDMember_21cc8c1a-c369-490a-9cd8-8dd7632fcfe0_terseLabel_en-US" xlink:label="lab_form_TaiwanSemiconductorManufacturingCoLTDMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Taiwan Semiconductor Manufacturing Co., LTD.</link:label>
    <link:label id="lab_form_TaiwanSemiconductorManufacturingCoLTDMember_label_en-US" xlink:label="lab_form_TaiwanSemiconductorManufacturingCoLTDMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Taiwan Semiconductor Manufacturing Co., LTD [Member]</link:label>
    <link:label id="lab_form_TaiwanSemiconductorManufacturingCoLTDMember_documentation_en-US" xlink:label="lab_form_TaiwanSemiconductorManufacturingCoLTDMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Taiwan Semiconductor Manufacturing Co., LTD</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_TaiwanSemiconductorManufacturingCoLTDMember" xlink:href="form-20210327.xsd#form_TaiwanSemiconductorManufacturingCoLTDMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_TaiwanSemiconductorManufacturingCoLTDMember" xlink:to="lab_form_TaiwanSemiconductorManufacturingCoLTDMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskTypeDomain_f54473cf-b95d-46d2-a582-cb56a202933e_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Type [Domain]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskTypeDomain_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain" xlink:to="lab_us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_b2df9c97-ab81-4903-88cc-59095518dcf9_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total liabilities and stockholders&#8217; equity</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities and Equity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_abf738a1-fc7d-4ec9-b2b6-545ed0677689_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated other comprehensive income</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Net of Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressCityOrTown_469e8d09-f615-4138-b7c8-6dde0a99354e_terseLabel_en-US" xlink:label="lab_dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:label id="lab_dei_EntityAddressCityOrTown_label_en-US" xlink:label="lab_dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressCityOrTown"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressCityOrTown" xlink:to="lab_dei_EntityAddressCityOrTown" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock_5063a74e-028a-4af2-b55c-d8f30c6d96fb_terseLabel_en-US" xlink:label="lab_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Customer Percentage of Revenue</link:label>
    <link:label id="lab_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock_label_en-US" xlink:label="lab_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedules of Concentration of Risk, by Risk Factor [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:to="lab_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_form_RestOfTheWorldMember_971032d3-6ad0-40aa-b46e-5a79220af1bf_terseLabel_en-US" xlink:label="lab_form_RestOfTheWorldMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Rest of the world</link:label>
    <link:label id="lab_form_RestOfTheWorldMember_label_en-US" xlink:label="lab_form_RestOfTheWorldMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Rest Of The World [Member]</link:label>
    <link:label id="lab_form_RestOfTheWorldMember_documentation_en-US" xlink:label="lab_form_RestOfTheWorldMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Rest Of The World [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_RestOfTheWorldMember" xlink:href="form-20210327.xsd#form_RestOfTheWorldMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_RestOfTheWorldMember" xlink:to="lab_form_RestOfTheWorldMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent_1611e328-7bbe-4b0f-867a-a933fae07f80_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued compensation and benefits</link:label>
    <link:label id="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employee-related Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:to="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_f341ba27-27a6-431d-93ac-2d3345bcfac8_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</link:label>
    <link:label id="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_label_en-US" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedStockUnitsRSUMember_57ab294a-8158-4e08-aade-dfac7c7e2eca_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedStockUnitsRSUMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Stock Units</link:label>
    <link:label id="lab_us-gaap_RestrictedStockUnitsRSUMember_label_en-US" xlink:label="lab_us-gaap_RestrictedStockUnitsRSUMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Stock Units (RSUs) [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedStockUnitsRSUMember" xlink:to="lab_us-gaap_RestrictedStockUnitsRSUMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_9aa617c6-044e-4cde-a9a0-6910924c09ee_totalLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Assets Acquired</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_20ab2667-dab0-417e-9ffc-dc3347e72206_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hedging Relationship [Axis]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hedging Relationship [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:to="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_1d019b6c-7464-4dc8-982d-ba3b43c7a2b0_terseLabel_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Securities not included as they would have been antidilutive (in shares)</link:label>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_label_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShortTermLeaseCost_d7b3317b-0f2c-469d-baf0-5a68d6fd931e_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermLeaseCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-term lease expense</link:label>
    <link:label id="lab_us-gaap_ShortTermLeaseCost_label_en-US" xlink:label="lab_us-gaap_ShortTermLeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-term Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermLeaseCost" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShortTermLeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermLeaseCost" xlink:to="lab_us-gaap_ShortTermLeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_dd166f29-946d-4119-a5c0-20a233d11880_terseLabel_en-US" xlink:label="lab_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Indefinite-lived Intangible Assets [Axis]</link:label>
    <link:label id="lab_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_label_en-US" xlink:label="lab_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Indefinite-lived Intangible Assets [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="lab_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityComponentDomain_7f3f54ef-376e-436b-8db3-0957a334ce02_terseLabel_en-US" xlink:label="lab_us-gaap_EquityComponentDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:label id="lab_us-gaap_EquityComponentDomain_label_en-US" xlink:label="lab_us-gaap_EquityComponentDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityComponentDomain" xlink:to="lab_us-gaap_EquityComponentDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock_df312930-140f-4096-8a28-a58a9443b163_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of the Impact of Cash Flow Hedges on Consolidated Financial Statements</link:label>
    <link:label id="lab_us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Cash Flow Hedges Included in Accumulated Other Comprehensive Income (Loss) [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GrossProfit_31064dc5-b42f-4824-b184-1641fb5c1a2d_totalLabel_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross profit</link:label>
    <link:label id="lab_us-gaap_GrossProfit_5c084bd2-03d1-48cd-aca5-6801f93e8122_terseLabel_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross profit</link:label>
    <link:label id="lab_us-gaap_GrossProfit_label_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross Profit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GrossProfit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GrossProfit" xlink:to="lab_us-gaap_GrossProfit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_b7e4d120-5ae3-484b-a6c3-1c11380909ca_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, plant and equipment, net of accumulated depreciation</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_ace2ba08-2b50-4656-ad31-4e7ad20aff2e_totalLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_dd6b99c1-d9f0-43d1-af02-0972ea03d8b9_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2024</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_a5c1a4c9-64a0-4d11-854a-48cd453af438_terseLabel_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_label_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityTaxIdentificationNumber" xlink:to="lab_dei_EntityTaxIdentificationNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_form_OperatingLeaseRightOfUseAssetAmortization_0c7588ac-5e1e-45ff-afe7-190e2349ebcb_terseLabel_en-US" xlink:label="lab_form_OperatingLeaseRightOfUseAssetAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reduction in the carrying amount of right-of-use assets</link:label>
    <link:label id="lab_form_OperatingLeaseRightOfUseAssetAmortization_label_en-US" xlink:label="lab_form_OperatingLeaseRightOfUseAssetAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Right-Of-Use Asset, Amortization</link:label>
    <link:label id="lab_form_OperatingLeaseRightOfUseAssetAmortization_documentation_en-US" xlink:label="lab_form_OperatingLeaseRightOfUseAssetAmortization" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Right-Of-Use Asset, Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_OperatingLeaseRightOfUseAssetAmortization" xlink:href="form-20210327.xsd#form_OperatingLeaseRightOfUseAssetAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_OperatingLeaseRightOfUseAssetAmortization" xlink:to="lab_form_OperatingLeaseRightOfUseAssetAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionTable_b6feabd7-de67-43d4-9fd8-0092ac68f227_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Lease, Description [Table]</link:label>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionTable_label_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Lease, Description [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeLeaseDescriptionTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable" xlink:to="lab_us-gaap_LesseeLeaseDescriptionTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetIncomeLoss_e49aab02-61dc-4be2-b08f-24b2171ca8fe_totalLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net income</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_c93e268e-29f4-450c-a08b-759f4b360857_terseLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net income</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_label_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Income (Loss) Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetIncomeLoss" xlink:to="lab_us-gaap_NetIncomeLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_c75f91d1-34ee-4ffb-85f5-1e46d3c3c9f8_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Changes in assets and liabilities:</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Operating Capital [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_031119e1-496a-4666-b2af-ed17be1f135a_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Remainder of 2021</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryDisclosureTextBlock_90608fd3-d11e-4113-9fa3-ac966b3936d9_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories, net</link:label>
    <link:label id="lab_us-gaap_InventoryDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_InventoryDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryDisclosureTextBlock" xlink:to="lab_us-gaap_InventoryDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax_f10408fb-8fbd-421c-ab2e-a25cd860a010_totalLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other comprehensive loss, net of tax</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax_301d0b60-6254-4456-9d2d-953c906c0095_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other comprehensive loss</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Net of Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TradeNamesMember_324fdb6d-f767-4c44-a208-4edc85a3233a_terseLabel_en-US" xlink:label="lab_us-gaap_TradeNamesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trade names</link:label>
    <link:label id="lab_us-gaap_TradeNamesMember_label_en-US" xlink:label="lab_us-gaap_TradeNamesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trade Names [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradeNamesMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TradeNamesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TradeNamesMember" xlink:to="lab_us-gaap_TradeNamesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeasesAbstract_c75b2381-d87d-4d8b-9478-47687ce97f56_terseLabel_en-US" xlink:label="lab_us-gaap_LeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases [Abstract]</link:label>
    <link:label id="lab_us-gaap_LeasesAbstract_label_en-US" xlink:label="lab_us-gaap_LeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeasesAbstract" xlink:to="lab_us-gaap_LeasesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock_e1652969-4f47-4941-8ed1-cb45b9c9933e_terseLabel_en-US" xlink:label="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basis of Presentation and New Accounting Pronouncements</link:label>
    <link:label id="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock_label_en-US" xlink:label="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Organization, Consolidation and Presentation of Financial Statements Disclosure and Significant Accounting Policies [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock" xlink:to="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsCurrent_2545b68e-60d4-4047-b069-f0b543c8f79e_totalLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total current assets</link:label>
    <link:label id="lab_us-gaap_AssetsCurrent_label_en-US" xlink:label="lab_us-gaap_AssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="lab_us-gaap_AssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_f9f1371f-96ed-4383-93de-3612f040eded_terseLabel_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_label_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_CurrentFiscalYearEndDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CurrentFiscalYearEndDate" xlink:to="lab_dei_CurrentFiscalYearEndDate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CorporateAndOtherMember_fd616567-ae98-4704-b6b2-160020713ced_terseLabel_en-US" xlink:label="lab_us-gaap_CorporateAndOtherMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Corporate and Other</link:label>
    <link:label id="lab_us-gaap_CorporateAndOtherMember_label_en-US" xlink:label="lab_us-gaap_CorporateAndOtherMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Corporate and Other [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateAndOtherMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CorporateAndOtherMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CorporateAndOtherMember" xlink:to="lab_us-gaap_CorporateAndOtherMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingExpensesAbstract_2069777f-d562-4fd9-b428-2df62d0f7243_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingExpensesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating expenses:</link:label>
    <link:label id="lab_us-gaap_OperatingExpensesAbstract_label_en-US" xlink:label="lab_us-gaap_OperatingExpensesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Expenses [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpensesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingExpensesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingExpensesAbstract" xlink:to="lab_us-gaap_OperatingExpensesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_328ae4bd-b5eb-44d1-87a3-0fdb93299c12_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net income per share:</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareAbstract" xlink:to="lab_us-gaap_EarningsPerShareAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_aaf88fe6-1335-4777-bbe5-f1a2c990ccdd_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders&#8217; equity:</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' Equity Attributable to Parent [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityAbstract" xlink:to="lab_us-gaap_StockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_5126ac10-17f1-40db-b71e-6a114b150fcc_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Intangible assets</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DevelopedTechnologyRightsMember_b9d43566-9def-4d4d-8076-a7fdea25b20b_terseLabel_en-US" xlink:label="lab_us-gaap_DevelopedTechnologyRightsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Developed technologies</link:label>
    <link:label id="lab_us-gaap_DevelopedTechnologyRightsMember_label_en-US" xlink:label="lab_us-gaap_DevelopedTechnologyRightsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Developed Technology Rights [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DevelopedTechnologyRightsMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DevelopedTechnologyRightsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DevelopedTechnologyRightsMember" xlink:to="lab_us-gaap_DevelopedTechnologyRightsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_9d8d9c7f-e83e-409a-b4e3-3e8734f46158_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_label_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalPeriodFocus" xlink:to="lab_dei_DocumentFiscalPeriodFocus" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_EUR_49b8be43-b617-4b3e-9f06-d659d25fb955_terseLabel_en-US" xlink:label="lab_currency_EUR" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Euro Dollar</link:label>
    <link:label id="lab_currency_EUR_label_en-US" xlink:label="lab_currency_EUR" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Euro Member Countries, Euro</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_EUR" xlink:href="https://xbrl.sec.gov/currency/2020/currency-2020-01-31.xsd#currency_EUR"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_EUR" xlink:to="lab_currency_EUR" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CertificatesOfDepositMember_76c243c0-1b68-4136-92ec-7f1d44bf36ed_terseLabel_en-US" xlink:label="lab_us-gaap_CertificatesOfDepositMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Certificates of deposit</link:label>
    <link:label id="lab_us-gaap_CertificatesOfDepositMember_label_en-US" xlink:label="lab_us-gaap_CertificatesOfDepositMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Certificates of Deposit [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CertificatesOfDepositMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CertificatesOfDepositMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CertificatesOfDepositMember" xlink:to="lab_us-gaap_CertificatesOfDepositMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SupplementalCashFlowInformationAbstract_278525b9-48b3-4f5d-b8d0-4e783bdc2963_terseLabel_en-US" xlink:label="lab_us-gaap_SupplementalCashFlowInformationAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Supplemental disclosure of cash flow information:</link:label>
    <link:label id="lab_us-gaap_SupplementalCashFlowInformationAbstract_label_en-US" xlink:label="lab_us-gaap_SupplementalCashFlowInformationAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Supplemental Cash Flow Information [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalCashFlowInformationAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SupplementalCashFlowInformationAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="lab_us-gaap_SupplementalCashFlowInformationAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionAcquireeDomain_d09211da-39fb-49ab-8af9-10385acc700c_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionAcquireeDomain_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="lab_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_e4ad43ef-1059-4002-a5ed-62706a130ad7_verboseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of common stock under the Employee Stock Purchase Plan (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_6228dd42-bb9c-4d5e-972f-164bb49ffe08_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shares issued (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Shares, Employee Stock Purchase Plans</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityFilerCategory_a026068f-3a15-4e87-b407-b16866cb92cf_terseLabel_en-US" xlink:label="lab_dei_EntityFilerCategory" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Filer Category</link:label>
    <link:label id="lab_dei_EntityFilerCategory_label_en-US" xlink:label="lab_dei_EntityFilerCategory" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Filer Category</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFilerCategory" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityFilerCategory"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFilerCategory" xlink:to="lab_dei_EntityFilerCategory" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_674f911a-b8e3-40c0-bbd9-fe8cf6d136bd_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Stock-based Compensation</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:to="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockMember_04274981-902d-4e5c-a73a-3afe960884ca_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock</link:label>
    <link:label id="lab_us-gaap_CommonStockMember_label_en-US" xlink:label="lab_us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockMember" xlink:to="lab_us-gaap_CommonStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ProductsAndServicesDomain_ca0f2eee-63fa-4e8b-a37e-175c57a0ccc7_terseLabel_en-US" xlink:label="lab_srt_ProductsAndServicesDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Domain]</link:label>
    <link:label id="lab_srt_ProductsAndServicesDomain_label_en-US" xlink:label="lab_srt_ProductsAndServicesDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductsAndServicesDomain" xlink:to="lab_srt_ProductsAndServicesDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentLineItems_76605fbc-5001-44aa-93ef-192f2ffe872f_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Line Items]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentLineItems_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_d271dcde-13f8-4d88-8081-bb10b48aac74_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Type [Domain]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Lived Tangible Asset [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskBenchmarkDomain_cf113e9f-abdb-4350-aaf5-2b91ae9ca92d_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Domain]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskBenchmarkDomain_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_f0d41919-1a80-4f23-a12c-ea9d17d98a27_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseholdImprovementsMember_88bcff16-2e63-4002-b8b3-3bf4f1dd7f89_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseholdImprovementsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leasehold improvements</link:label>
    <link:label id="lab_us-gaap_LeaseholdImprovementsMember_label_en-US" xlink:label="lab_us-gaap_LeaseholdImprovementsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leasehold Improvements [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseholdImprovementsMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseholdImprovementsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseholdImprovementsMember" xlink:to="lab_us-gaap_LeaseholdImprovementsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsGross_e69fea35-f566-4096-bf81-eb31448a78e5_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsGross_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpenseMember_82f6b248-dbe5-4dbd-886d-7c8237194d41_terseLabel_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpenseMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Location of Gain (Loss) Recognized on Derivatives</link:label>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpenseMember_label_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpenseMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Nonoperating Income (Expense) [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpenseMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpenseMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpenseMember" xlink:to="lab_us-gaap_OtherNonoperatingIncomeExpenseMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_5cacfd66-7014-424f-aff1-72b927a6bd1e_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, remaining performance obligation, expected timing of satisfaction, period</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MoneyMarketFundsMember_0af983e7-17be-49de-a9cc-8f0de7fbdd36_terseLabel_en-US" xlink:label="lab_us-gaap_MoneyMarketFundsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Money market funds</link:label>
    <link:label id="lab_us-gaap_MoneyMarketFundsMember_label_en-US" xlink:label="lab_us-gaap_MoneyMarketFundsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Money Market Funds [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MoneyMarketFundsMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MoneyMarketFundsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MoneyMarketFundsMember" xlink:to="lab_us-gaap_MoneyMarketFundsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_8b8e356d-2682-4ce2-b817-8d1fe93b8ebd_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less: Accumulated depreciation and amortization</link:label>
    <link:label id="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_13e3bff5-2d5d-4993-8ccd-6bcae8d7b3dc_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vested end expected to vest, aggregate intrinsic value</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NoncashInvestingAndFinancingItemsAbstract_3e3a9829-92bb-406b-826b-239b517d269d_terseLabel_en-US" xlink:label="lab_us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-cash investing and financing activities:</link:label>
    <link:label id="lab_us-gaap_NoncashInvestingAndFinancingItemsAbstract_label_en-US" xlink:label="lab_us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Noncash Investing and Financing Items [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:to="lab_us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_CurrencyAxis_08510736-ff58-40f5-a2c7-4da9c8d618cf_terseLabel_en-US" xlink:label="lab_srt_CurrencyAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Currency [Axis]</link:label>
    <link:label id="lab_srt_CurrencyAxis_label_en-US" xlink:label="lab_srt_CurrencyAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Currency [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CurrencyAxis" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_CurrencyAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_CurrencyAxis" xlink:to="lab_srt_CurrencyAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_641ad021-6e15-4795-b81b-b092f6784126_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Options exercised (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_75747dd9-a57b-4591-b49f-41471bd8a842_totalLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net increase (decrease) in cash, cash equivalents and restricted cash</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationDisclosureTextBlock_4c9a80b0-8a97-4e74-8b4f-321506acc2c7_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquisition</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Business Combination Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:to="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_HedgingRelationshipDomain_f8e828e3-c613-4a76-aec4-3470be0e214e_terseLabel_en-US" xlink:label="lab_us-gaap_HedgingRelationshipDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hedging Relationship [Domain]</link:label>
    <link:label id="lab_us-gaap_HedgingRelationshipDomain_label_en-US" xlink:label="lab_us-gaap_HedgingRelationshipDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Hedging Relationship [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingRelationshipDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingRelationshipDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_HedgingRelationshipDomain" xlink:to="lab_us-gaap_HedgingRelationshipDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_012841b1-b326-400b-826f-770d9a73f4c2_terseLabel_en-US" xlink:label="lab_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table]</link:label>
    <link:label id="lab_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_label_en-US" xlink:label="lab_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable" xlink:to="lab_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_75a73f16-b347-4474-bad8-5cf93e165566_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Future Minimum Payments Under Leases</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Maturity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_125f9500-6fd9-4877-9a74-e9e16488e5be_terseLabel_en-US" xlink:label="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basis of Presentation</link:label>
    <link:label id="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basis of Accounting, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:to="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_a5597e25-64d8-4be2-bd24-bf7b7935ffbd_verboseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basic (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_2b9a3f28-ad2f-469f-9d10-5984cee9146c_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted-average shares used in computing basic net income per share (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Basic</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_76921ae7-d70e-4e99-9cab-639637d6b26c_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Translation adjustments and other</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockShares_c6a89e2b-cf9b-4b91-9890-795ed7bf60d9_terseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockShares" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury stock (in shares)</link:label>
    <link:label id="lab_us-gaap_TreasuryStockShares_label_en-US" xlink:label="lab_us-gaap_TreasuryStockShares" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock, Shares</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockShares" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockShares"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockShares" xlink:to="lab_us-gaap_TreasuryStockShares" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashFlowHedgingMember_9f50aa58-1379-43b0-ae63-7323e4e6f5ef_terseLabel_en-US" xlink:label="lab_us-gaap_CashFlowHedgingMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash flow hedging</link:label>
    <link:label id="lab_us-gaap_CashFlowHedgingMember_label_en-US" xlink:label="lab_us-gaap_CashFlowHedgingMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash Flow Hedging [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashFlowHedgingMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashFlowHedgingMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashFlowHedgingMember" xlink:to="lab_us-gaap_CashFlowHedgingMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PlanNameDomain_7e699c4e-55b6-423c-8af0-cd6375d897ef_terseLabel_en-US" xlink:label="lab_us-gaap_PlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Plan Name [Domain]</link:label>
    <link:label id="lab_us-gaap_PlanNameDomain_label_en-US" xlink:label="lab_us-gaap_PlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Plan Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PlanNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PlanNameDomain" xlink:to="lab_us-gaap_PlanNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_a34fd94a-ebbd-48d2-85d8-0078adcae5df_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InterestPaidNet_1c6630ea-2ea1-498f-afc6-f177317a11a6_terseLabel_en-US" xlink:label="lab_us-gaap_InterestPaidNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash paid for interest</link:label>
    <link:label id="lab_us-gaap_InterestPaidNet_label_en-US" xlink:label="lab_us-gaap_InterestPaidNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Paid, Excluding Capitalized Interest, Operating Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestPaidNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InterestPaidNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestPaidNet" xlink:to="lab_us-gaap_InterestPaidNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_6f5e5c21-7bb6-44a4-bccc-d821a618ad66_terseLabel_en-US" xlink:label="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease, right-of-use assets obtained in exchange for lease obligations</link:label>
    <link:label id="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_label_en-US" xlink:label="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Right-of-Use Asset Obtained in Exchange for Operating Lease Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:to="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_eef12759-f108-4ba6-b860-fe4362f5cc9f_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2022</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementClassOfStockAxis_cb36ee4d-8f0f-4864-821b-013f3f0a9a4d_terseLabel_en-US" xlink:label="lab_us-gaap_StatementClassOfStockAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class of Stock [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementClassOfStockAxis_label_en-US" xlink:label="lab_us-gaap_StatementClassOfStockAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class of Stock [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementClassOfStockAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementClassOfStockAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementClassOfStockAxis" xlink:to="lab_us-gaap_StatementClassOfStockAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_9992121a-2493-4102-ae43-d022d2f0f785_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Provision for income taxes</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxesPaidNet_f89ae93d-4413-4712-a09d-2b09570cc4f9_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxesPaidNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash paid for income taxes, net</link:label>
    <link:label id="lab_us-gaap_IncomeTaxesPaidNet_label_en-US" xlink:label="lab_us-gaap_IncomeTaxesPaidNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Taxes Paid, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesPaidNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxesPaidNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxesPaidNet" xlink:to="lab_us-gaap_IncomeTaxesPaidNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_5bfd3a13-4f3d-43a1-9864-374cfe17b604_periodStartLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash, cash equivalents and restricted cash, beginning of period</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_16035fa4-ff22-456f-b9f6-7481f0b9fdc8_periodEndLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash, cash equivalents and restricted cash, end of period</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_75cb0911-d177-4101-b724-06907fd45676_totalLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total cash, cash equivalents and restricted cash</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquireMarketableSecurities_d5bbdf34-eaac-406d-a56c-27889e7327ef_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireMarketableSecurities" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchases of marketable securities</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireMarketableSecurities_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireMarketableSecurities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments to Acquire Marketable Securities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireMarketableSecurities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquireMarketableSecurities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireMarketableSecurities" xlink:to="lab_us-gaap_PaymentsToAcquireMarketableSecurities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesFairValueDisclosure_450061e8-03bf-4dc7-b74f-34ef823c6f41_negatedTotalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesFairValueDisclosure" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total liabilities</link:label>
    <link:label id="lab_us-gaap_LiabilitiesFairValueDisclosure_b2f4bfc5-2e29-49ed-b9ff-65a9129e0251_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities measured at fair value on non-recurring basis</link:label>
    <link:label id="lab_us-gaap_LiabilitiesFairValueDisclosure_label_en-US" xlink:label="lab_us-gaap_LiabilitiesFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Financial and Nonfinancial Liabilities, Fair Value Disclosure</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosure" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesFairValueDisclosure"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosure" xlink:to="lab_us-gaap_LiabilitiesFairValueDisclosure" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_4bc28ae0-43ea-490f-972d-7dbb03f1e305_terseLabel_en-US" xlink:label="lab_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Indefinite-lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:label id="lab_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_label_en-US" xlink:label="lab_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Indefinite-lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="lab_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrent_70fc8ca4-c1f2-4042-a239-051a18d9012e_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued liabilities</link:label>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrent_5202c877-825a-4450-a96f-f51318871ddb_totalLabel_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued liabilities</link:label>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="lab_us-gaap_AccruedLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_2e944e3e-68c3-46de-8134-246a634832d5_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Diluted (In dollars per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share, Diluted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareDiluted" xlink:to="lab_us-gaap_EarningsPerShareDiluted" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_LocalPhoneNumber_a874950a-db90-4e8f-9ef6-45472cc45561_terseLabel_en-US" xlink:label="lab_dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Local Phone Number</link:label>
    <link:label id="lab_dei_LocalPhoneNumber_label_en-US" xlink:label="lab_dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Local Phone Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_LocalPhoneNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_LocalPhoneNumber" xlink:to="lab_dei_LocalPhoneNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock_f137d900-2116-487b-b225-a7307ef8b660_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Amortization Expense</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-lived Intangible Assets Amortization Expense [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeLineItems_f77285fc-5417-4ec3-b164-505d379a5c2c_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative [Line Items]</link:label>
    <link:label id="lab_us-gaap_DerivativeLineItems_label_en-US" xlink:label="lab_us-gaap_DerivativeLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Derivative [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeLineItems" xlink:to="lab_us-gaap_DerivativeLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_9b0b9499-66f7-4de0-a9b4-a4f234445ada_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Net, Amortization Expense, Rolling Maturity [Abstract]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Net, Amortization Expense, Rolling Maturity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Depreciation_74c49c21-201a-4601-b40f-59d5b87a83d3_terseLabel_en-US" xlink:label="lab_us-gaap_Depreciation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation</link:label>
    <link:label id="lab_us-gaap_Depreciation_label_en-US" xlink:label="lab_us-gaap_Depreciation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Depreciation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Depreciation" xlink:to="lab_us-gaap_Depreciation" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressAddressLine1_01f15478-2520-4d3a-a3d9-49756ce61d2e_terseLabel_en-US" xlink:label="lab_dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:label id="lab_dei_EntityAddressAddressLine1_label_en-US" xlink:label="lab_dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressAddressLine1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressAddressLine1" xlink:to="lab_dei_EntityAddressAddressLine1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerLiability_458b719b-e06e-411d-ad40-1453a6570c76_verboseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiability" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract liabilities</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiability_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiability" xlink:to="lab_us-gaap_ContractWithCustomerLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets_4909ecb7-a248-47b7-970f-9e5c9f085319_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other assets</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Other Operating Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:to="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_6cfa0ca5-3bae-4b41-8916-02ca0c781bb0_terseLabel_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_label_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityEmergingGrowthCompany" xlink:to="lab_dei_EntityEmergingGrowthCompany" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_5b6dccc9-f69b-4373-b258-288f6aba0a1d_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]</link:label>
    <link:label id="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_label_en-US" xlink:label="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="lab_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_d40a4c55-a43f-4ac1-bbc8-1baee4b42c55_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of common stock pursuant to exercise of options</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Value, Stock Options Exercised</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_ce693f6d-0781-4f68-af74-4682537632ec_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Finite Lived Intangible Assets [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AwardTypeAxis_5082cba9-7fc5-4b11-8b4b-0a1a6b149f5c_terseLabel_en-US" xlink:label="lab_us-gaap_AwardTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:label id="lab_us-gaap_AwardTypeAxis_label_en-US" xlink:label="lab_us-gaap_AwardTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AwardTypeAxis" xlink:to="lab_us-gaap_AwardTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_4a4d5a75-bb85-4563-9a58-ffa46155b5fb_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Grant Date Fair Value</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_fdc151a7-334e-4842-bde4-76d7854f72ec_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Amortization</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite-Lived Intangible Assets, Accumulated Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MaximumMember_6f457507-ba92-4daa-b293-4a63a8a48329_terseLabel_en-US" xlink:label="lab_srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maximum</link:label>
    <link:label id="lab_srt_MaximumMember_label_en-US" xlink:label="lab_srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maximum [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MaximumMember" xlink:to="lab_srt_MaximumMember" xlink:type="arc" order="1"/>
    <link:label id="lab_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal_d86a06e6-2659-43d7-b975-9057d84ecce2_totalLabel_en-US" xlink:label="lab_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net</link:label>
    <link:label id="lab_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal_label_en-US" xlink:label="lab_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite Lived Intangible Assets Amortization Expense Total</link:label>
    <link:label id="lab_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal_documentation_en-US" xlink:label="lab_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finite Lived Intangible Assets Amortization Expense Total</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal" xlink:href="form-20210327.xsd#form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal" xlink:to="lab_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetainedEarningsMember_e775d155-441c-480d-9918-9d2baba131d3_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Deficit</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsMember_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retained Earnings [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RetainedEarningsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsMember" xlink:to="lab_us-gaap_RetainedEarningsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_f47b73ed-0849-40ac-84f6-4b5bb130697e_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_879f83a4-476f-4ac1-9b12-63203a38a37d_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash used in investing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_b0cfeb0d-d02a-49c0-b570-823a564c8f62_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional Disclosures</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Additional Disclosures [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_985ecb29-31f8-4829-98bc-0f944dfbfddd_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding, weighted average remaining contractual life</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_1c32f51c-94e5-47de-8610-483c34b22e70_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskDisclosureTextBlock_401b2bd0-2322-4ef4-8c27-c7fab31fe36e_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration of Credit and Other Risks</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:to="lab_us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e13c1a97-b720-4d40-9678-5047b66a4b29_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates_610005a2-728a-4d9c-a895-05a121616455_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from sale of a subsidiary</link:label>
    <link:label id="lab_us-gaap_ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates_label_en-US" xlink:label="lab_us-gaap_ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Divestiture of Interest in Subsidiaries and Affiliates</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates" xlink:to="lab_us-gaap_ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_TradingSymbol_36d8de69-f8e4-4f6f-abd4-d48f09ab39b3_terseLabel_en-US" xlink:label="lab_dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trading Symbol</link:label>
    <link:label id="lab_dei_TradingSymbol_label_en-US" xlink:label="lab_dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trading Symbol</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_TradingSymbol"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_TradingSymbol" xlink:to="lab_dei_TradingSymbol" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_17fd3a16-6fa3-4d0c-a949-e020fa97a292_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercisable (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_5ccf7cd7-2d1a-4327-858f-6e64eddb3fbc_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted average per share purchase price (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_0e319d39-3db3-4055-bec7-d01db74d1e4f_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, net</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_e2b081bb-c35b-4f51-9248-355989063cea_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from issuances of common stock</link:label>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_label_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds, Issuance of Shares, Share-based Payment Arrangement, Including Option Exercised</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:to="lab_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueByBalanceSheetGroupingTable_89a02d73-8b7c-4f3f-9523-a564ad6a64e4_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByBalanceSheetGroupingTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, by Balance Sheet Grouping [Table]</link:label>
    <link:label id="lab_us-gaap_FairValueByBalanceSheetGroupingTable_label_en-US" xlink:label="lab_us-gaap_FairValueByBalanceSheetGroupingTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, by Balance Sheet Grouping [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByBalanceSheetGroupingTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByBalanceSheetGroupingTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable" xlink:to="lab_us-gaap_FairValueByBalanceSheetGroupingTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockValue_904192fc-02fd-42a7-a16b-1a1d06a862bf_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockValue" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury stock, at cost, 136,402 and &#8212; shares</link:label>
    <link:label id="lab_us-gaap_TreasuryStockValue_label_en-US" xlink:label="lab_us-gaap_TreasuryStockValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Treasury Stock, Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockValue" xlink:to="lab_us-gaap_TreasuryStockValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerAssetNet_64849f54-ee34-4780-a197-3409fd6d6fa6_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract assets</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerAssetNet_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Asset, after Allowance for Credit Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerAssetNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerAssetNet" xlink:to="lab_us-gaap_ContractWithCustomerAssetNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareTextBlock_0894836a-ae3f-410e-a505-8bede54b1ee2_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Income per Share</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareTextBlock_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareTextBlock" xlink:to="lab_us-gaap_EarningsPerShareTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_f1e4e0ea-2908-4947-8b60-ff86b0eced22_terseLabel_en-US" xlink:label="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Organization, Consolidation and Presentation of Financial Statements [Abstract]</link:label>
    <link:label id="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_label_en-US" xlink:label="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Organization, Consolidation and Presentation of Financial Statements [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquipmentMember_8673ac1b-3405-458f-b279-028e2558f95c_terseLabel_en-US" xlink:label="lab_us-gaap_EquipmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Machinery and equipment</link:label>
    <link:label id="lab_us-gaap_EquipmentMember_label_en-US" xlink:label="lab_us-gaap_EquipmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equipment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquipmentMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquipmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquipmentMember" xlink:to="lab_us-gaap_EquipmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_c7dc1c83-e920-4aec-988c-46623637a0e9_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current liabilities:</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities, Current [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:to="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityShellCompany_e8144762-6f21-4eaa-971d-4bf4b82ad48b_terseLabel_en-US" xlink:label="lab_dei_EntityShellCompany" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Shell Company</link:label>
    <link:label id="lab_dei_EntityShellCompany_label_en-US" xlink:label="lab_dei_EntityShellCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Shell Company</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityShellCompany" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityShellCompany"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityShellCompany" xlink:to="lab_dei_EntityShellCompany" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingInformationLineItems_3a3a69e4-8f35-4813-a693-a6f89fa231f6_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingInformationLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting Information [Line Items]</link:label>
    <link:label id="lab_us-gaap_SegmentReportingInformationLineItems_label_en-US" xlink:label="lab_us-gaap_SegmentReportingInformationLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Segment Reporting Information [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems" xlink:to="lab_us-gaap_SegmentReportingInformationLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_12ffed7a-0f48-45e6-befc-f1b689c437e6_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vested and expected to vest (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" 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:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_53ec3e96-fd6e-4ccd-a332-92ff1adffaa2_terseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">New Accounting Pronouncements</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">New Accounting Pronouncements, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfFinancialPositionAbstract_6ffd4a71-8501-422d-a6dd-d42a84919a9d_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfFinancialPositionAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract" xlink:to="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:type="arc" order="1"/>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>9
<FILENAME>form-20210327_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2021 Workiva-->
<!--r:55eb200e-7c73-4bb5-9f15-e61280b04aa0,g:704d941e-e4b3-4657-882c-0679fd4e906c-->
<link:linkbase 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" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.formfactor.com/role/CoverPage" xlink:type="simple" xlink:href="form-20210327.xsd#CoverPage"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/CoverPage" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_CoverAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType_cb19472c-03bc-4c1f-8427-2cc671de125a" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentType"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_DocumentType_cb19472c-03bc-4c1f-8427-2cc671de125a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentQuarterlyReport_cd12289f-4fd8-4983-8ba6-7fb927455622" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentQuarterlyReport"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_DocumentQuarterlyReport_cd12289f-4fd8-4983-8ba6-7fb927455622" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate_c1f605df-a1f5-465e-9893-886037aa4c18" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentPeriodEndDate"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_DocumentPeriodEndDate_c1f605df-a1f5-465e-9893-886037aa4c18" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentTransitionReport_233dc3a1-b36c-49bd-80fc-19b19a1e1e42" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentTransitionReport"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_DocumentTransitionReport_233dc3a1-b36c-49bd-80fc-19b19a1e1e42" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber_ac0db6b3-dfd8-4789-9e49-970d780824ac" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityFileNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_EntityFileNumber_ac0db6b3-dfd8-4789-9e49-970d780824ac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName_9830cee1-ac7d-4d42-9273-aff1d3f9dfe0" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityRegistrantName"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_EntityRegistrantName_9830cee1-ac7d-4d42-9273-aff1d3f9dfe0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode_ae0f6ec7-ac71-47fd-97b1-602530ecff95" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_EntityIncorporationStateCountryCode_ae0f6ec7-ac71-47fd-97b1-602530ecff95" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber_abd1fc7a-892b-4a7c-9bdb-bd1c75947377" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_EntityTaxIdentificationNumber_abd1fc7a-892b-4a7c-9bdb-bd1c75947377" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1_94e3dafe-45c5-4eb4-a211-4061107b06e9" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressAddressLine1"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_EntityAddressAddressLine1_94e3dafe-45c5-4eb4-a211-4061107b06e9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown_7a5359c1-8f2e-4544-9ed2-a3424f591f57" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressCityOrTown"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_EntityAddressCityOrTown_7a5359c1-8f2e-4544-9ed2-a3424f591f57" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince_b8d014c8-acd0-4297-86b7-395a9b8ab96c" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressStateOrProvince"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_EntityAddressStateOrProvince_b8d014c8-acd0-4297-86b7-395a9b8ab96c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode_21a07368-c1e5-43c5-9e25-e3012706ebf3" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressPostalZipCode"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_EntityAddressPostalZipCode_21a07368-c1e5-43c5-9e25-e3012706ebf3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode_4f3dd5c4-2b90-4d05-aef6-2ae057026aea" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_CityAreaCode"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_CityAreaCode_4f3dd5c4-2b90-4d05-aef6-2ae057026aea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber_83a33c65-01f0-4160-b97a-c6698726161e" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_LocalPhoneNumber"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_LocalPhoneNumber_83a33c65-01f0-4160-b97a-c6698726161e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle_d46b309b-2b19-4cf2-9ba2-f5dbf22a7002" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_Security12bTitle"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_Security12bTitle_d46b309b-2b19-4cf2-9ba2-f5dbf22a7002" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol_6704adba-c329-44cd-82d1-48d64392f30b" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_TradingSymbol"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_TradingSymbol_6704adba-c329-44cd-82d1-48d64392f30b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName_7c4be213-1c24-4973-b14f-6b07580069da" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_SecurityExchangeName"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_SecurityExchangeName_7c4be213-1c24-4973-b14f-6b07580069da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCurrentReportingStatus_d6f9816d-6019-4b19-bc23-a14da4f33903" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityCurrentReportingStatus"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_EntityCurrentReportingStatus_d6f9816d-6019-4b19-bc23-a14da4f33903" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityInteractiveDataCurrent_bb34b7aa-1f9e-4f35-ba9c-8d5d2b84ff33" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityInteractiveDataCurrent"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_EntityInteractiveDataCurrent_bb34b7aa-1f9e-4f35-ba9c-8d5d2b84ff33" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFilerCategory_ffa4df2d-6354-4164-a350-bad3ed8cff0b" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityFilerCategory"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_EntityFilerCategory_ffa4df2d-6354-4164-a350-bad3ed8cff0b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntitySmallBusiness_eeeee04d-577e-4cdf-b51d-9855c66048ea" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntitySmallBusiness"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_EntitySmallBusiness_eeeee04d-577e-4cdf-b51d-9855c66048ea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany_5978a5a5-d927-4139-b21c-fc0dc33fee01" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_EntityEmergingGrowthCompany_5978a5a5-d927-4139-b21c-fc0dc33fee01" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityShellCompany_bb45f4bc-74c6-4d1d-9c41-e67e32f334eb" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityShellCompany"/>
    <link:presentationArc order="23" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_EntityShellCompany_bb45f4bc-74c6-4d1d-9c41-e67e32f334eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCommonStockSharesOutstanding_3bb6cca1-784f-42b0-9e08-6a797226d2d3" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <link:presentationArc order="24" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_EntityCommonStockSharesOutstanding_3bb6cca1-784f-42b0-9e08-6a797226d2d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag_880cb031-8e7d-4774-b70e-198fbd6f1b46" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_AmendmentFlag"/>
    <link:presentationArc order="25" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_AmendmentFlag_880cb031-8e7d-4774-b70e-198fbd6f1b46" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey_b9070798-169f-4a95-9888-c650a344f076" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityCentralIndexKey"/>
    <link:presentationArc order="26" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_EntityCentralIndexKey_b9070798-169f-4a95-9888-c650a344f076" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate_960599f4-b134-4d1f-ad04-08bf8a866b9e" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_CurrentFiscalYearEndDate"/>
    <link:presentationArc order="27" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_CurrentFiscalYearEndDate_960599f4-b134-4d1f-ad04-08bf8a866b9e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus_b9ab4812-bbab-4365-8340-dff0d749fbcf" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentFiscalYearFocus"/>
    <link:presentationArc order="28" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_DocumentFiscalYearFocus_b9ab4812-bbab-4365-8340-dff0d749fbcf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus_eeea390f-330a-478a-8c41-27eb3c22191c" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:presentationArc order="29" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_29ebd6e0-8a1a-456b-b111-80c844af4cae" xlink:to="loc_dei_DocumentFiscalPeriodFocus_eeea390f-330a-478a-8c41-27eb3c22191c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets" xlink:type="simple" xlink:href="form-20210327.xsd#CondensedConsolidatedBalanceSheets"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_b6f6aa42-2bf2-4ace-b18e-162ce5ad7cbd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract_5eb3e719-0d87-44f0-9e49-07a7c1286a8e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_b6f6aa42-2bf2-4ace-b18e-162ce5ad7cbd" xlink:to="loc_us-gaap_AssetsAbstract_5eb3e719-0d87-44f0-9e49-07a7c1286a8e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract_756cf583-24f1-47d0-8b9f-075b54129cea" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_5eb3e719-0d87-44f0-9e49-07a7c1286a8e" xlink:to="loc_us-gaap_AssetsCurrentAbstract_756cf583-24f1-47d0-8b9f-075b54129cea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_17870b9a-dc32-418f-84d8-2e29e93645b3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_756cf583-24f1-47d0-8b9f-075b54129cea" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_17870b9a-dc32-418f-84d8-2e29e93645b3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MarketableSecuritiesCurrent_86eb90e1-cf95-4426-be20-43babf70d680" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MarketableSecuritiesCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_756cf583-24f1-47d0-8b9f-075b54129cea" xlink:to="loc_us-gaap_MarketableSecuritiesCurrent_86eb90e1-cf95-4426-be20-43babf70d680" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_cad4c181-58d3-4d9d-a9a3-ad986346551d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_756cf583-24f1-47d0-8b9f-075b54129cea" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_cad4c181-58d3-4d9d-a9a3-ad986346551d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_7698a0c8-40fb-407d-a27f-2d543ca04c59" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryNet"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_756cf583-24f1-47d0-8b9f-075b54129cea" xlink:to="loc_us-gaap_InventoryNet_7698a0c8-40fb-407d-a27f-2d543ca04c59" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_faf0dcd8-7ced-4d25-94e6-03fe4ebf0235" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_756cf583-24f1-47d0-8b9f-075b54129cea" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_faf0dcd8-7ced-4d25-94e6-03fe4ebf0235" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_a6c3c9ed-eb4f-4fd7-ad23-dfd1e32d4dac" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_756cf583-24f1-47d0-8b9f-075b54129cea" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_a6c3c9ed-eb4f-4fd7-ad23-dfd1e32d4dac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_cde7819b-eee9-459f-a16b-d76e7fa2a45f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsCurrent"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_756cf583-24f1-47d0-8b9f-075b54129cea" xlink:to="loc_us-gaap_AssetsCurrent_cde7819b-eee9-459f-a16b-d76e7fa2a45f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsNoncurrent_5974a516-640f-4c78-b781-040769421330" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsNoncurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_5eb3e719-0d87-44f0-9e49-07a7c1286a8e" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsNoncurrent_5974a516-640f-4c78-b781-040769421330" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_452aa540-5f91-4780-8103-e1f8c53c27c1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_5eb3e719-0d87-44f0-9e49-07a7c1286a8e" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_452aa540-5f91-4780-8103-e1f8c53c27c1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_367bc7d5-28b7-4836-b9ee-9fc9203259e3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_5eb3e719-0d87-44f0-9e49-07a7c1286a8e" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_367bc7d5-28b7-4836-b9ee-9fc9203259e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_1b508075-46b1-432d-bab1-80c9b5b65f9a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_5eb3e719-0d87-44f0-9e49-07a7c1286a8e" xlink:to="loc_us-gaap_Goodwill_1b508075-46b1-432d-bab1-80c9b5b65f9a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_c26fe8d2-edc9-4c2f-9f2b-cf4f9c1a5c83" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_5eb3e719-0d87-44f0-9e49-07a7c1286a8e" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_c26fe8d2-edc9-4c2f-9f2b-cf4f9c1a5c83" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_c7ed8ed5-5151-4022-973c-f65940a96936" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_5eb3e719-0d87-44f0-9e49-07a7c1286a8e" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet_c7ed8ed5-5151-4022-973c-f65940a96936" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_c4943f59-dbe1-4698-ac34-4d9657952553" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_5eb3e719-0d87-44f0-9e49-07a7c1286a8e" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_c4943f59-dbe1-4698-ac34-4d9657952553" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_3cfdc6d8-9817-4967-8bcc-acb4924eeaf1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Assets"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_5eb3e719-0d87-44f0-9e49-07a7c1286a8e" xlink:to="loc_us-gaap_Assets_3cfdc6d8-9817-4967-8bcc-acb4924eeaf1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_0963b0e4-af7a-4f6b-b0be-9f32a5ce3901" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_b6f6aa42-2bf2-4ace-b18e-162ce5ad7cbd" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_0963b0e4-af7a-4f6b-b0be-9f32a5ce3901" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_40982c83-0611-4f39-87e8-ed8a9936726b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_0963b0e4-af7a-4f6b-b0be-9f32a5ce3901" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_40982c83-0611-4f39-87e8-ed8a9936726b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent_ce5a4477-f930-484d-9101-ed00cfd056fe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_40982c83-0611-4f39-87e8-ed8a9936726b" xlink:to="loc_us-gaap_AccountsPayableCurrent_ce5a4477-f930-484d-9101-ed00cfd056fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_7d66f182-ef75-45b2-b346-d480b93b53c2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_40982c83-0611-4f39-87e8-ed8a9936726b" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_7d66f182-ef75-45b2-b346-d480b93b53c2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtCurrent_8de3350a-bc3f-45aa-9b2c-c93343ca1496" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermDebtCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_40982c83-0611-4f39-87e8-ed8a9936726b" xlink:to="loc_us-gaap_LongTermDebtCurrent_8de3350a-bc3f-45aa-9b2c-c93343ca1496" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredRevenueCurrent_81b6ba97-1b22-420f-94ce-cb4694f7a83f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredRevenueCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_40982c83-0611-4f39-87e8-ed8a9936726b" xlink:to="loc_us-gaap_DeferredRevenueCurrent_81b6ba97-1b22-420f-94ce-cb4694f7a83f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_7b1fc29f-c857-4f21-803f-eef5d5780715" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_40982c83-0611-4f39-87e8-ed8a9936726b" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_7b1fc29f-c857-4f21-803f-eef5d5780715" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_e111d742-44f9-410b-b8a2-0dd2e95850c3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_40982c83-0611-4f39-87e8-ed8a9936726b" xlink:to="loc_us-gaap_LiabilitiesCurrent_e111d742-44f9-410b-b8a2-0dd2e95850c3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_f1617546-98b1-4f95-a7f0-d79f76bc56fd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_0963b0e4-af7a-4f6b-b0be-9f32a5ce3901" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_f1617546-98b1-4f95-a7f0-d79f76bc56fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_a52be546-18b7-432f-9113-dbf6c88b34e1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_0963b0e4-af7a-4f6b-b0be-9f32a5ce3901" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_a52be546-18b7-432f-9113-dbf6c88b34e1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_f6f16645-097c-4484-8c45-dcf91ecbb55b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_0963b0e4-af7a-4f6b-b0be-9f32a5ce3901" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_f6f16645-097c-4484-8c45-dcf91ecbb55b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredCreditsAndOtherLiabilitiesNoncurrent_3d9c8326-f764-4140-b8cc-6fa3d3103399" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredCreditsAndOtherLiabilitiesNoncurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_0963b0e4-af7a-4f6b-b0be-9f32a5ce3901" xlink:to="loc_us-gaap_DeferredCreditsAndOtherLiabilitiesNoncurrent_3d9c8326-f764-4140-b8cc-6fa3d3103399" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_b1308320-d0dd-4d12-a794-2da5c36aea40" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Liabilities"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_0963b0e4-af7a-4f6b-b0be-9f32a5ce3901" xlink:to="loc_us-gaap_Liabilities_b1308320-d0dd-4d12-a794-2da5c36aea40" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract_494cfb3c-329a-4fac-9582-ad7f85381f3c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityAbstract"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_0963b0e4-af7a-4f6b-b0be-9f32a5ce3901" xlink:to="loc_us-gaap_StockholdersEquityAbstract_494cfb3c-329a-4fac-9582-ad7f85381f3c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_60503904-7b3c-402b-92e5-749d931528e8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_494cfb3c-329a-4fac-9582-ad7f85381f3c" xlink:to="loc_us-gaap_CommonStockValue_60503904-7b3c-402b-92e5-749d931528e8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValue_9398b77f-531e-447c-8e91-acc837363fb5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_494cfb3c-329a-4fac-9582-ad7f85381f3c" xlink:to="loc_us-gaap_TreasuryStockValue_9398b77f-531e-447c-8e91-acc837363fb5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_bc62b978-9a0e-4901-b7cc-018e3bf58967" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_494cfb3c-329a-4fac-9582-ad7f85381f3c" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_bc62b978-9a0e-4901-b7cc-018e3bf58967" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_80d05504-1700-4d02-88c3-476b02d55f55" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_494cfb3c-329a-4fac-9582-ad7f85381f3c" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_80d05504-1700-4d02-88c3-476b02d55f55" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_9f7d261a-ff0b-4a01-9d48-22afc4060de3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_494cfb3c-329a-4fac-9582-ad7f85381f3c" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_9f7d261a-ff0b-4a01-9d48-22afc4060de3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_e710ff97-43e5-4b75-8d73-a13a96d72156" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_494cfb3c-329a-4fac-9582-ad7f85381f3c" xlink:to="loc_us-gaap_StockholdersEquity_e710ff97-43e5-4b75-8d73-a13a96d72156" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_e1c988ce-dc18-43f9-af47-a9c6eb87a0bb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_0963b0e4-af7a-4f6b-b0be-9f32a5ce3901" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquity_e1c988ce-dc18-43f9-af47-a9c6eb87a0bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_3d98fe72-5481-4731-9171-c53e61ce0397" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_b6f6aa42-2bf2-4ace-b18e-162ce5ad7cbd" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_3d98fe72-5481-4731-9171-c53e61ce0397" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/CondensedConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="form-20210327.xsd#CondensedConsolidatedBalanceSheetsParenthetical"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/CondensedConsolidatedBalanceSheetsParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_07a8340a-3b3f-40c0-90f5-513b2b37ea02" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_2949b42e-c3d5-4f3b-90e0-912397528932" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_07a8340a-3b3f-40c0-90f5-513b2b37ea02" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_2949b42e-c3d5-4f3b-90e0-912397528932" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_f2d2a494-563d-4cdb-9757-1897e5bf6e5f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_07a8340a-3b3f-40c0-90f5-513b2b37ea02" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_f2d2a494-563d-4cdb-9757-1897e5bf6e5f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_f97f890c-94a2-4a56-8df5-50ac71f2694b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_07a8340a-3b3f-40c0-90f5-513b2b37ea02" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_f97f890c-94a2-4a56-8df5-50ac71f2694b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_93fde6cd-45ed-4f45-92d5-82e2062b23e1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_07a8340a-3b3f-40c0-90f5-513b2b37ea02" xlink:to="loc_us-gaap_CommonStockSharesIssued_93fde6cd-45ed-4f45-92d5-82e2062b23e1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_c6906021-07e3-4ce7-9d81-925cacec53c0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_07a8340a-3b3f-40c0-90f5-513b2b37ea02" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_c6906021-07e3-4ce7-9d81-925cacec53c0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockShares_697734ed-b645-477b-9651-cb2751785a1b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockShares"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_07a8340a-3b3f-40c0-90f5-513b2b37ea02" xlink:to="loc_us-gaap_TreasuryStockShares_697734ed-b645-477b-9651-cb2751785a1b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome" xlink:type="simple" xlink:href="form-20210327.xsd#CondensedConsolidatedStatementsofIncome"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract_97ae63d9-9862-4129-ac52-d700fcae890b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_c65e50be-6779-43b5-acda-a5a1261b6b4f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_97ae63d9-9862-4129-ac52-d700fcae890b" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_c65e50be-6779-43b5-acda-a5a1261b6b4f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_11f421c1-dcbb-41ff-85d5-81a36157e316" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_97ae63d9-9862-4129-ac52-d700fcae890b" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_11f421c1-dcbb-41ff-85d5-81a36157e316" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_4005e0ac-5288-4964-8f7f-1f175c3dd047" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GrossProfit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_97ae63d9-9862-4129-ac52-d700fcae890b" xlink:to="loc_us-gaap_GrossProfit_4005e0ac-5288-4964-8f7f-1f175c3dd047" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpensesAbstract_e27f67ae-3517-45ec-8595-96fbf9d2873a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingExpensesAbstract"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_97ae63d9-9862-4129-ac52-d700fcae890b" xlink:to="loc_us-gaap_OperatingExpensesAbstract_e27f67ae-3517-45ec-8595-96fbf9d2873a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_aeebd043-f50a-4c63-845c-9929eaf8330e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_e27f67ae-3517-45ec-8595-96fbf9d2873a" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_aeebd043-f50a-4c63-845c-9929eaf8330e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_dd51baca-15bd-4b07-8317-66a227aa5662" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_e27f67ae-3517-45ec-8595-96fbf9d2873a" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_dd51baca-15bd-4b07-8317-66a227aa5662" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpenses_b52a1a46-f32c-4ac2-ac4c-af74d0c3abc6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingExpenses"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_e27f67ae-3517-45ec-8595-96fbf9d2873a" xlink:to="loc_us-gaap_OperatingExpenses_b52a1a46-f32c-4ac2-ac4c-af74d0c3abc6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_849d4273-c511-4d2b-9651-5a64becc2c52" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_97ae63d9-9862-4129-ac52-d700fcae890b" xlink:to="loc_us-gaap_OperatingIncomeLoss_849d4273-c511-4d2b-9651-5a64becc2c52" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentIncomeInterest_77593849-8566-4ad0-b9ff-ae5cab70ce3c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InvestmentIncomeInterest"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_97ae63d9-9862-4129-ac52-d700fcae890b" xlink:to="loc_us-gaap_InvestmentIncomeInterest_77593849-8566-4ad0-b9ff-ae5cab70ce3c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense_d25bbc81-b1cd-4c3c-98c3-a8eab73454fc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InterestExpense"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_97ae63d9-9862-4129-ac52-d700fcae890b" xlink:to="loc_us-gaap_InterestExpense_d25bbc81-b1cd-4c3c-98c3-a8eab73454fc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_536a8b0d-0868-4b5d-b9a8-94f00499ec17" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_97ae63d9-9862-4129-ac52-d700fcae890b" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_536a8b0d-0868-4b5d-b9a8-94f00499ec17" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_26744750-f73d-44d0-a4c2-4a41c22b1d5f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_97ae63d9-9862-4129-ac52-d700fcae890b" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_26744750-f73d-44d0-a4c2-4a41c22b1d5f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_b16e873f-0574-4cb7-882c-f42d2062d630" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_97ae63d9-9862-4129-ac52-d700fcae890b" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_b16e873f-0574-4cb7-882c-f42d2062d630" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_44d8a99d-ee66-45ae-8c09-2a341a52affe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_97ae63d9-9862-4129-ac52-d700fcae890b" xlink:to="loc_us-gaap_NetIncomeLoss_44d8a99d-ee66-45ae-8c09-2a341a52affe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_d57a0c56-882e-45b8-bfc6-da4df129004c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_97ae63d9-9862-4129-ac52-d700fcae890b" xlink:to="loc_us-gaap_EarningsPerShareAbstract_d57a0c56-882e-45b8-bfc6-da4df129004c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic_c32738a6-3c22-4349-9f5e-47282d5aa9b6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_d57a0c56-882e-45b8-bfc6-da4df129004c" xlink:to="loc_us-gaap_EarningsPerShareBasic_c32738a6-3c22-4349-9f5e-47282d5aa9b6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_28cf036f-a364-4468-a6e2-c277090ab813" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_d57a0c56-882e-45b8-bfc6-da4df129004c" xlink:to="loc_us-gaap_EarningsPerShareDiluted_28cf036f-a364-4468-a6e2-c277090ab813" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_a4d9248d-d141-491a-aac0-572328b06518" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_97ae63d9-9862-4129-ac52-d700fcae890b" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_a4d9248d-d141-491a-aac0-572328b06518" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_33dfc7c6-cb6c-42e0-8ff3-88063e0dfc43" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_a4d9248d-d141-491a-aac0-572328b06518" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_33dfc7c6-cb6c-42e0-8ff3-88063e0dfc43" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_e5ed2ea6-e002-4f8f-894b-fec75d2322b5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_a4d9248d-d141-491a-aac0-572328b06518" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_e5ed2ea6-e002-4f8f-894b-fec75d2322b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome" xlink:type="simple" xlink:href="form-20210327.xsd#CondensedConsolidatedStatementsofComprehensiveIncome"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_a3557d74-6203-40f2-8752-62c61937f5a2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_43b531bd-83ac-404e-80c0-1037dc2b8aef" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_a3557d74-6203-40f2-8752-62c61937f5a2" xlink:to="loc_us-gaap_NetIncomeLoss_43b531bd-83ac-404e-80c0-1037dc2b8aef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_40215361-043e-43d8-b161-943c5c965704" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_a3557d74-6203-40f2-8752-62c61937f5a2" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_40215361-043e-43d8-b161-943c5c965704" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_ee330628-84b5-4f6f-b96a-5db6d6ff0791" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_40215361-043e-43d8-b161-943c5c965704" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_ee330628-84b5-4f6f-b96a-5db6d6ff0791" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_b0fe6d36-14c0-4640-82dd-de562ca9212d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_40215361-043e-43d8-b161-943c5c965704" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_b0fe6d36-14c0-4640-82dd-de562ca9212d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_4eefbb04-de96-4c1c-96ef-c30658253deb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_40215361-043e-43d8-b161-943c5c965704" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax_4eefbb04-de96-4c1c-96ef-c30658253deb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_4a000fa6-08f7-4905-99f8-8a4257b9e865" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_40215361-043e-43d8-b161-943c5c965704" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_4a000fa6-08f7-4905-99f8-8a4257b9e865" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_62ac1661-3568-4568-8357-f2ee30a4daee" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_a3557d74-6203-40f2-8752-62c61937f5a2" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTax_62ac1661-3568-4568-8357-f2ee30a4daee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity" xlink:type="simple" xlink:href="form-20210327.xsd#CondensedConsolidatedStatementsofStockholdersEquity"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_f7010be3-f93f-451a-99f5-655d19dab8b5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_14fed614-2ee4-4a1a-87cc-cb78716acdd8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_f7010be3-f93f-451a-99f5-655d19dab8b5" xlink:to="loc_us-gaap_StatementTable_14fed614-2ee4-4a1a-87cc-cb78716acdd8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_34ef76f0-15f8-4768-af5e-4df6ea6c6e43" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_14fed614-2ee4-4a1a-87cc-cb78716acdd8" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_34ef76f0-15f8-4768-af5e-4df6ea6c6e43" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_305b48ee-6aad-46c1-9138-07408ffd2c47" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_34ef76f0-15f8-4768-af5e-4df6ea6c6e43" xlink:to="loc_us-gaap_EquityComponentDomain_305b48ee-6aad-46c1-9138-07408ffd2c47" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_3ee065c6-016c-4ce5-8b4e-245af91fc58e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_305b48ee-6aad-46c1-9138-07408ffd2c47" xlink:to="loc_us-gaap_CommonStockMember_3ee065c6-016c-4ce5-8b4e-245af91fc58e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockMember_47b5ca29-17c3-4f09-9833-12e9a076ce41" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_305b48ee-6aad-46c1-9138-07408ffd2c47" xlink:to="loc_us-gaap_TreasuryStockMember_47b5ca29-17c3-4f09-9833-12e9a076ce41" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_0372732f-fd31-45bd-be30-b27d5c42acdb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_305b48ee-6aad-46c1-9138-07408ffd2c47" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_0372732f-fd31-45bd-be30-b27d5c42acdb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_8a020c5e-b40e-40fb-aded-4449779325b8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_305b48ee-6aad-46c1-9138-07408ffd2c47" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_8a020c5e-b40e-40fb-aded-4449779325b8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_b6f5c9d0-4997-4775-ab6b-aa6abf3e4ee7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RetainedEarningsMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_305b48ee-6aad-46c1-9138-07408ffd2c47" xlink:to="loc_us-gaap_RetainedEarningsMember_b6f5c9d0-4997-4775-ab6b-aa6abf3e4ee7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_3d638b2d-f546-4689-9f2b-37db041bd0f7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_14fed614-2ee4-4a1a-87cc-cb78716acdd8" xlink:to="loc_us-gaap_StatementLineItems_3d638b2d-f546-4689-9f2b-37db041bd0f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_3d638b2d-f546-4689-9f2b-37db041bd0f7" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesOutstanding_39a44a6b-b386-426a-b56f-f252e4283d30" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesOutstanding"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_SharesOutstanding_39a44a6b-b386-426a-b56f-f252e4283d30" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_e4516aad-7081-4402-8992-f55207902132" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_StockholdersEquity_e4516aad-7081-4402-8992-f55207902132" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_0427b814-a9a6-4395-ad54-17df89166d2c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_0427b814-a9a6-4395-ad54-17df89166d2c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_abb2ae62-9139-4e14-aee2-7c59e6192bc8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_abb2ae62-9139-4e14-aee2-7c59e6192bc8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross_f7ebafbc-f029-457a-a7e2-03f247ebbc6c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross_f7ebafbc-f029-457a-a7e2-03f247ebbc6c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_723a14f6-c5b8-48fd-8e02-1336813cda45" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_723a14f6-c5b8-48fd-8e02-1336813cda45" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_a2a5ed85-cdbe-414d-a93a-cd87cec3a644" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_a2a5ed85-cdbe-414d-a93a-cd87cec3a644" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_39a27092-f7d5-4cca-baaa-15365dc309a0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_39a27092-f7d5-4cca-baaa-15365dc309a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired_98d243bb-3df5-4953-8159-47848d78ad5d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockSharesAcquired"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_TreasuryStockSharesAcquired_98d243bb-3df5-4953-8159-47848d78ad5d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_4d7fde41-8a76-467b-8887-13a5893e523d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_4d7fde41-8a76-467b-8887-13a5893e523d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_4b7aa393-f850-41f0-b6d4-86474b2072d7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_4b7aa393-f850-41f0-b6d4-86474b2072d7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_5e83f9d6-c67f-4d7f-8d64-2877bf56ac2e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTax_5e83f9d6-c67f-4d7f-8d64-2877bf56ac2e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_f28933cf-1b43-4282-8554-d7a2b9ad2532" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_NetIncomeLoss_f28933cf-1b43-4282-8554-d7a2b9ad2532" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesOutstanding_b9bd6915-a7ef-46a8-9146-2ef0ed51b1af" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesOutstanding"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_SharesOutstanding_b9bd6915-a7ef-46a8-9146-2ef0ed51b1af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_17efad06-0e59-4744-8037-81b30d7a55af" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_612cf934-6a9c-41b1-a7a2-405e09ba5e53" xlink:to="loc_us-gaap_StockholdersEquity_17efad06-0e59-4744-8037-81b30d7a55af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows" xlink:type="simple" xlink:href="form-20210327.xsd#CondensedConsolidatedStatementsofCashFlows"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_1b6f8ef1-d73e-4fcc-b5e0-47f215183a43" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract_e8bda14f-501c-430a-9fbb-2216c83bc5d1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_1b6f8ef1-d73e-4fcc-b5e0-47f215183a43" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract_e8bda14f-501c-430a-9fbb-2216c83bc5d1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_a3dd3f62-ddae-4b07-9b3a-9a1d177fd7ff" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract_e8bda14f-501c-430a-9fbb-2216c83bc5d1" xlink:to="loc_us-gaap_NetIncomeLoss_a3dd3f62-ddae-4b07-9b3a-9a1d177fd7ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_4fc24225-7551-4bec-b271-c43411870cd9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract_e8bda14f-501c-430a-9fbb-2216c83bc5d1" xlink:to="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_4fc24225-7551-4bec-b271-c43411870cd9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation_80f67dee-99c1-4da4-9259-11c3c8318a1e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Depreciation"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_4fc24225-7551-4bec-b271-c43411870cd9" xlink:to="loc_us-gaap_Depreciation_80f67dee-99c1-4da4-9259-11c3c8318a1e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization_248c95f0-d827-40f5-aba6-83e34087a418" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfGoodsAndServicesSoldAmortization"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_4fc24225-7551-4bec-b271-c43411870cd9" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization_248c95f0-d827-40f5-aba6-83e34087a418" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_OperatingLeaseRightOfUseAssetAmortization_3ed3c6bb-27d0-4f93-a492-e0000be435e9" xlink:href="form-20210327.xsd#form_OperatingLeaseRightOfUseAssetAmortization"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_4fc24225-7551-4bec-b271-c43411870cd9" xlink:to="loc_form_OperatingLeaseRightOfUseAssetAmortization_3ed3c6bb-27d0-4f93-a492-e0000be435e9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_23f0e9b5-3044-4bb5-a9ef-646a4be93138" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensation"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_4fc24225-7551-4bec-b271-c43411870cd9" xlink:to="loc_us-gaap_ShareBasedCompensation_23f0e9b5-3044-4bb5-a9ef-646a4be93138" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWriteDown_90ec276e-bd01-43e5-8ee4-ec6b84830ea3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryWriteDown"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_4fc24225-7551-4bec-b271-c43411870cd9" xlink:to="loc_us-gaap_InventoryWriteDown_90ec276e-bd01-43e5-8ee4-ec6b84830ea3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherOperatingActivitiesCashFlowStatement_2acc8179-2c44-49c9-87cb-e92f4d263cf0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherOperatingActivitiesCashFlowStatement"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_4fc24225-7551-4bec-b271-c43411870cd9" xlink:to="loc_us-gaap_OtherOperatingActivitiesCashFlowStatement_2acc8179-2c44-49c9-87cb-e92f4d263cf0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_68bfac37-35cd-48b9-aa7f-8149c05b5ecc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_4fc24225-7551-4bec-b271-c43411870cd9" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_68bfac37-35cd-48b9-aa7f-8149c05b5ecc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_84262c21-a924-48ff-a71b-4a8d7d2c1ba3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_68bfac37-35cd-48b9-aa7f-8149c05b5ecc" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_84262c21-a924-48ff-a71b-4a8d7d2c1ba3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_6f729ffd-3041-4860-b4b7-1a272cd81a3f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_68bfac37-35cd-48b9-aa7f-8149c05b5ecc" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_6f729ffd-3041-4860-b4b7-1a272cd81a3f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_afe5c35c-0820-4ea4-8d77-39fe9bd5d29b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_68bfac37-35cd-48b9-aa7f-8149c05b5ecc" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_afe5c35c-0820-4ea4-8d77-39fe9bd5d29b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_f53c241f-e6cd-42d3-8208-9c10f61c6c7d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_68bfac37-35cd-48b9-aa7f-8149c05b5ecc" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_f53c241f-e6cd-42d3-8208-9c10f61c6c7d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_e54d8bb1-a84d-454a-95aa-d71f246278dd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_68bfac37-35cd-48b9-aa7f-8149c05b5ecc" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_e54d8bb1-a84d-454a-95aa-d71f246278dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_480c715c-afcc-4e97-b1a9-27211b0f4f1a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_68bfac37-35cd-48b9-aa7f-8149c05b5ecc" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_480c715c-afcc-4e97-b1a9-27211b0f4f1a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherDeferredLiability_d25ea52e-0019-46d0-bcb1-1e3a15f51844" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInOtherDeferredLiability"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_68bfac37-35cd-48b9-aa7f-8149c05b5ecc" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherDeferredLiability_d25ea52e-0019-46d0-bcb1-1e3a15f51844" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_59c35ffa-1423-45fc-baab-92ef12db7284" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_68bfac37-35cd-48b9-aa7f-8149c05b5ecc" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_59c35ffa-1423-45fc-baab-92ef12db7284" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasePayments_242aa7c9-2c47-4337-aad0-5cb655995ae6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeasePayments"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_68bfac37-35cd-48b9-aa7f-8149c05b5ecc" xlink:to="loc_us-gaap_OperatingLeasePayments_242aa7c9-2c47-4337-aad0-5cb655995ae6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_b183f11d-30e3-4c9f-ad12-c0fcdcca4f05" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract_e8bda14f-501c-430a-9fbb-2216c83bc5d1" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_b183f11d-30e3-4c9f-ad12-c0fcdcca4f05" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_6265ccd5-027c-4b55-96fc-6cda6b7be17a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_1b6f8ef1-d73e-4fcc-b5e0-47f215183a43" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_6265ccd5-027c-4b55-96fc-6cda6b7be17a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_1d8f0654-6530-40d4-ba69-1a375b220952" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_6265ccd5-027c-4b55-96fc-6cda6b7be17a" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_1d8f0654-6530-40d4-ba69-1a375b220952" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates_987b1890-c12e-4046-bec2-50cddf1741b2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_6265ccd5-027c-4b55-96fc-6cda6b7be17a" xlink:to="loc_us-gaap_ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates_987b1890-c12e-4046-bec2-50cddf1741b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireMarketableSecurities_1b90149b-bf32-443b-b4bf-2833d6db927e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquireMarketableSecurities"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_6265ccd5-027c-4b55-96fc-6cda6b7be17a" xlink:to="loc_us-gaap_PaymentsToAcquireMarketableSecurities_1b90149b-bf32-443b-b4bf-2833d6db927e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities_ec5f5f13-aa88-4ea0-8407-b9a60bcdff8a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_6265ccd5-027c-4b55-96fc-6cda6b7be17a" xlink:to="loc_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities_ec5f5f13-aa88-4ea0-8407-b9a60bcdff8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_b412b41d-2aba-4a2c-b2ac-a953bf457cda" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract_6265ccd5-027c-4b55-96fc-6cda6b7be17a" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_b412b41d-2aba-4a2c-b2ac-a953bf457cda" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_2a370ef6-d8bc-49d5-9791-a980c110daa2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_1b6f8ef1-d73e-4fcc-b5e0-47f215183a43" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_2a370ef6-d8bc-49d5-9791-a980c110daa2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_0acc2516-04c6-4f89-8048-d526fc8428d3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_2a370ef6-d8bc-49d5-9791-a980c110daa2" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_0acc2516-04c6-4f89-8048-d526fc8428d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_98871320-3c40-4b62-8a15-02b314a962f0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_2a370ef6-d8bc-49d5-9791-a980c110daa2" xlink:to="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_98871320-3c40-4b62-8a15-02b314a962f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_8522e5dc-5048-4b79-a38b-c6a6669beb56" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_2a370ef6-d8bc-49d5-9791-a980c110daa2" xlink:to="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_8522e5dc-5048-4b79-a38b-c6a6669beb56" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLongTermDebt_987167a4-8382-4ff4-83b1-7593241607db" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RepaymentsOfLongTermDebt"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_2a370ef6-d8bc-49d5-9791-a980c110daa2" xlink:to="loc_us-gaap_RepaymentsOfLongTermDebt_987167a4-8382-4ff4-83b1-7593241607db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_091d62a5-f5f9-48bc-b8a5-ad8d1069800f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_2a370ef6-d8bc-49d5-9791-a980c110daa2" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_091d62a5-f5f9-48bc-b8a5-ad8d1069800f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_3e8769e4-e95b-495e-bc95-d6d2b329fbb4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_1b6f8ef1-d73e-4fcc-b5e0-47f215183a43" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_3e8769e4-e95b-495e-bc95-d6d2b329fbb4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_72863277-4711-4f45-815c-b1be394f489e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_1b6f8ef1-d73e-4fcc-b5e0-47f215183a43" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_72863277-4711-4f45-815c-b1be394f489e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_8274d2bc-b5a1-4646-9727-00a7eaf815ec" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_1b6f8ef1-d73e-4fcc-b5e0-47f215183a43" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_8274d2bc-b5a1-4646-9727-00a7eaf815ec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_262f4d96-e613-4deb-ba3a-81d85e945f9c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_1b6f8ef1-d73e-4fcc-b5e0-47f215183a43" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_262f4d96-e613-4deb-ba3a-81d85e945f9c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract_bc52079a-e5c1-4d02-91f4-7a34dfdf9c2f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_1b6f8ef1-d73e-4fcc-b5e0-47f215183a43" xlink:to="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract_bc52079a-e5c1-4d02-91f4-7a34dfdf9c2f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_ChangeInCapitalExpendituresIncurredButNotYetPaid_71b233e2-3460-499f-9359-9908222269b8" xlink:href="form-20210327.xsd#form_ChangeInCapitalExpendituresIncurredButNotYetPaid"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract_bc52079a-e5c1-4d02-91f4-7a34dfdf9c2f" xlink:to="loc_form_ChangeInCapitalExpendituresIncurredButNotYetPaid_71b233e2-3460-499f-9359-9908222269b8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_67b4f773-dbb1-4c89-8433-03844360f214" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NoncashInvestingAndFinancingItemsAbstract_bc52079a-e5c1-4d02-91f4-7a34dfdf9c2f" xlink:to="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_67b4f773-dbb1-4c89-8433-03844360f214" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplementalCashFlowInformationAbstract_b7854942-25a4-4c4b-b240-19b72d44e07d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SupplementalCashFlowInformationAbstract"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_1b6f8ef1-d73e-4fcc-b5e0-47f215183a43" xlink:to="loc_us-gaap_SupplementalCashFlowInformationAbstract_b7854942-25a4-4c4b-b240-19b72d44e07d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesPaidNet_f7eab7c5-ed47-4e8a-9af4-04782d217674" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxesPaidNet"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SupplementalCashFlowInformationAbstract_b7854942-25a4-4c4b-b240-19b72d44e07d" xlink:to="loc_us-gaap_IncomeTaxesPaidNet_f7eab7c5-ed47-4e8a-9af4-04782d217674" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestPaidNet_75124d4c-e730-4061-9de9-e75b752ae783" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InterestPaidNet"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SupplementalCashFlowInformationAbstract_b7854942-25a4-4c4b-b240-19b72d44e07d" xlink:to="loc_us-gaap_InterestPaidNet_75124d4c-e730-4061-9de9-e75b752ae783" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_fe0634f4-b6ed-4f4f-a170-d344a3e3f88d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_1b6f8ef1-d73e-4fcc-b5e0-47f215183a43" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_fe0634f4-b6ed-4f4f-a170-d344a3e3f88d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_7efb9a50-bafb-428a-b033-090d7749732e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_fe0634f4-b6ed-4f4f-a170-d344a3e3f88d" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_7efb9a50-bafb-428a-b033-090d7749732e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashCurrent_2bccf9bd-2ed7-4af0-997f-e51798618a08" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedCashCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_fe0634f4-b6ed-4f4f-a170-d344a3e3f88d" xlink:to="loc_us-gaap_RestrictedCashCurrent_2bccf9bd-2ed7-4af0-997f-e51798618a08" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashNoncurrent_ce0aa7c5-436c-4116-a707-d83df331745e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedCashNoncurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_fe0634f4-b6ed-4f4f-a170-d344a3e3f88d" xlink:to="loc_us-gaap_RestrictedCashNoncurrent_ce0aa7c5-436c-4116-a707-d83df331745e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_0b80814f-5c7c-454b-8a04-6e7ae973f77a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_fe0634f4-b6ed-4f4f-a170-d344a3e3f88d" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_0b80814f-5c7c-454b-8a04-6e7ae973f77a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncements" xlink:type="simple" xlink:href="form-20210327.xsd#BasisofPresentationandNewAccountingPronouncements"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncements" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_d3ee0cf7-400a-427a-a7ae-1f6db58bf75a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock_959d5467-aded-49e0-a58f-dbad49e4637c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_d3ee0cf7-400a-427a-a7ae-1f6db58bf75a" xlink:to="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock_959d5467-aded-49e0-a58f-dbad49e4637c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncementsPolicies" xlink:type="simple" xlink:href="form-20210327.xsd#BasisofPresentationandNewAccountingPronouncementsPolicies"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncementsPolicies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_0e1413ad-0448-4f97-8978-0d3eb69128ac" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_6c72399a-90e8-4a9d-a6f5-ad356dbed4f8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_0e1413ad-0448-4f97-8978-0d3eb69128ac" xlink:to="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_6c72399a-90e8-4a9d-a6f5-ad356dbed4f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiscalPeriod_de8c1fe7-0397-41f8-94fe-868dd91f3d56" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiscalPeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_0e1413ad-0448-4f97-8978-0d3eb69128ac" xlink:to="loc_us-gaap_FiscalPeriod_de8c1fe7-0397-41f8-94fe-868dd91f3d56" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription_02cdfd9a-fdb5-446d-82d2-880650fd8017" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PriorPeriodReclassificationAdjustmentDescription"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_0e1413ad-0448-4f97-8978-0d3eb69128ac" xlink:to="loc_us-gaap_PriorPeriodReclassificationAdjustmentDescription_02cdfd9a-fdb5-446d-82d2-880650fd8017" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_3d78ab82-ac2f-4a72-9951-2de4f994f94e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_0e1413ad-0448-4f97-8978-0d3eb69128ac" xlink:to="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_3d78ab82-ac2f-4a72-9951-2de4f994f94e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementPolicyPolicyTextBlock_a7c68340-bdc4-4f41-a8b1-2b4dbed83e9d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementPolicyPolicyTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_0e1413ad-0448-4f97-8978-0d3eb69128ac" xlink:to="loc_us-gaap_FairValueMeasurementPolicyPolicyTextBlock_a7c68340-bdc4-4f41-a8b1-2b4dbed83e9d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisks" xlink:type="simple" xlink:href="form-20210327.xsd#ConcentrationofCreditandOtherRisks"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisks" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RisksAndUncertaintiesAbstract_381fc0e8-e4ed-4773-80f5-c146a462ddbb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RisksAndUncertaintiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskDisclosureTextBlock_2afc6508-af17-4ca6-b122-00f27763fa0b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RisksAndUncertaintiesAbstract_381fc0e8-e4ed-4773-80f5-c146a462ddbb" xlink:to="loc_us-gaap_ConcentrationRiskDisclosureTextBlock_2afc6508-af17-4ca6-b122-00f27763fa0b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksTables" xlink:type="simple" xlink:href="form-20210327.xsd#ConcentrationofCreditandOtherRisksTables"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RisksAndUncertaintiesAbstract_34ad5059-60c7-46bd-87be-cff1f92883e6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RisksAndUncertaintiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock_6216782d-fd8d-4e91-b978-a808dbb9c087" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RisksAndUncertaintiesAbstract_34ad5059-60c7-46bd-87be-cff1f92883e6" xlink:to="loc_us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock_6216782d-fd8d-4e91-b978-a808dbb9c087" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails" xlink:type="simple" xlink:href="form-20210327.xsd#ConcentrationofCreditandOtherRisksDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RisksAndUncertaintiesAbstract_ddd62cf9-af24-46a3-89ae-def5db156159" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RisksAndUncertaintiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTable_fe670882-13e2-494f-9b36-7486fedb616a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RisksAndUncertaintiesAbstract_ddd62cf9-af24-46a3-89ae-def5db156159" xlink:to="loc_us-gaap_ConcentrationRiskTable_fe670882-13e2-494f-9b36-7486fedb616a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_61cc96d6-9660-4978-9638-b5365a297569" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_fe670882-13e2-494f-9b36-7486fedb616a" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_61cc96d6-9660-4978-9638-b5365a297569" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_672da9fc-b7da-48db-9846-d8bb1958fef5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_61cc96d6-9660-4978-9638-b5365a297569" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_672da9fc-b7da-48db-9846-d8bb1958fef5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_834d3b7a-ef49-4171-bc18-81bdf6836020" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CustomerConcentrationRiskMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_672da9fc-b7da-48db-9846-d8bb1958fef5" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_834d3b7a-ef49-4171-bc18-81bdf6836020" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_47ff52d9-c4f6-415a-a566-e63d67831603" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_fe670882-13e2-494f-9b36-7486fedb616a" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_47ff52d9-c4f6-415a-a566-e63d67831603" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_1e41358c-c428-4906-a731-0e62e838630b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_47ff52d9-c4f6-415a-a566-e63d67831603" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_1e41358c-c428-4906-a731-0e62e838630b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerMember_eb7cf1ca-6bd9-4163-8a18-d96ac962b998" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_1e41358c-c428-4906-a731-0e62e838630b" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerMember_eb7cf1ca-6bd9-4163-8a18-d96ac962b998" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableMember_1ebdb2b1-26b9-4aa8-bcd8-cb5da980da2c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_1e41358c-c428-4906-a731-0e62e838630b" xlink:to="loc_us-gaap_AccountsReceivableMember_1ebdb2b1-26b9-4aa8-bcd8-cb5da980da2c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MajorCustomersAxis_80dd0b9d-63bb-4750-a1c2-528c6e1bd0bb" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MajorCustomersAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_fe670882-13e2-494f-9b36-7486fedb616a" xlink:to="loc_srt_MajorCustomersAxis_80dd0b9d-63bb-4750-a1c2-528c6e1bd0bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain_eb66847a-297d-4a96-bd8f-7509d19915d2" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_MajorCustomersAxis_80dd0b9d-63bb-4750-a1c2-528c6e1bd0bb" xlink:to="loc_srt_NameOfMajorCustomerDomain_eb66847a-297d-4a96-bd8f-7509d19915d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_IntelMember_8b01c7e9-4273-4415-989a-efbb4d52d91a" xlink:href="form-20210327.xsd#form_IntelMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_eb66847a-297d-4a96-bd8f-7509d19915d2" xlink:to="loc_form_IntelMember_8b01c7e9-4273-4415-989a-efbb4d52d91a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_TaiwanSemiconductorManufacturingCoLTDMember_53938c70-eafd-4777-b7ef-89a176b1fd62" xlink:href="form-20210327.xsd#form_TaiwanSemiconductorManufacturingCoLTDMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_eb66847a-297d-4a96-bd8f-7509d19915d2" xlink:to="loc_form_TaiwanSemiconductorManufacturingCoLTDMember_53938c70-eafd-4777-b7ef-89a176b1fd62" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_MajorCustomer1Member_1deee1ea-75dd-4a06-842d-ee31655a9eb6" xlink:href="form-20210327.xsd#form_MajorCustomer1Member"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_eb66847a-297d-4a96-bd8f-7509d19915d2" xlink:to="loc_form_MajorCustomer1Member_1deee1ea-75dd-4a06-842d-ee31655a9eb6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_MajorCustomer2Member_df92da5e-8b1f-46fc-aa1e-8b643fbadbe3" xlink:href="form-20210327.xsd#form_MajorCustomer2Member"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_eb66847a-297d-4a96-bd8f-7509d19915d2" xlink:to="loc_form_MajorCustomer2Member_df92da5e-8b1f-46fc-aa1e-8b643fbadbe3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskLineItems_26fc87e4-e86b-48ec-a44b-fc38f74bb4fe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_fe670882-13e2-494f-9b36-7486fedb616a" xlink:to="loc_us-gaap_ConcentrationRiskLineItems_26fc87e4-e86b-48ec-a44b-fc38f74bb4fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_14c234a6-050a-4ee0-b092-aedaa5fbb8f7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_26fc87e4-e86b-48ec-a44b-fc38f74bb4fe" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_14c234a6-050a-4ee0-b092-aedaa5fbb8f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/Inventoriesnet" xlink:type="simple" xlink:href="form-20210327.xsd#Inventoriesnet"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/Inventoriesnet" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_97941d4b-698b-4dd1-89c9-ede3c96218ad" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock_26667b2d-b222-4580-9b63-ada43aa56f57" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_97941d4b-698b-4dd1-89c9-ede3c96218ad" xlink:to="loc_us-gaap_InventoryDisclosureTextBlock_26667b2d-b222-4580-9b63-ada43aa56f57" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/InventoriesnetTables" xlink:type="simple" xlink:href="form-20210327.xsd#InventoriesnetTables"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/InventoriesnetTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_5c698dcf-9543-4c27-822a-7c44dc6cbf8c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_ddd999de-556e-416f-8642-51c7b8bcbc13" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_5c698dcf-9543-4c27-822a-7c44dc6cbf8c" xlink:to="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_ddd999de-556e-416f-8642-51c7b8bcbc13" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/InventoriesnetDetails" xlink:type="simple" xlink:href="form-20210327.xsd#InventoriesnetDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/InventoriesnetDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_35ded955-bc61-47b2-a2ee-6a08dbd4854f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves_287b9c11-0b49-4ed4-b63f-87e765dff589" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_35ded955-bc61-47b2-a2ee-6a08dbd4854f" xlink:to="loc_us-gaap_InventoryRawMaterialsNetOfReserves_287b9c11-0b49-4ed4-b63f-87e765dff589" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWorkInProcessNetOfReserves_0610a930-f321-4501-94c8-5ac3fc1dd733" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryWorkInProcessNetOfReserves"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_35ded955-bc61-47b2-a2ee-6a08dbd4854f" xlink:to="loc_us-gaap_InventoryWorkInProcessNetOfReserves_0610a930-f321-4501-94c8-5ac3fc1dd733" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_1c8d868e-8b12-47e2-8d17-41a1bcd15b4f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_35ded955-bc61-47b2-a2ee-6a08dbd4854f" xlink:to="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_1c8d868e-8b12-47e2-8d17-41a1bcd15b4f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_41f0d4ee-d77c-4f26-9c2c-7fc76001cc77" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryNet"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_35ded955-bc61-47b2-a2ee-6a08dbd4854f" xlink:to="loc_us-gaap_InventoryNet_41f0d4ee-d77c-4f26-9c2c-7fc76001cc77" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/Acquisition" xlink:type="simple" xlink:href="form-20210327.xsd#Acquisition"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/Acquisition" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_5db53666-6132-4c76-b1e6-793f79951735" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock_2754cc50-d294-4b47-9c8e-84f1276e8b9d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_5db53666-6132-4c76-b1e6-793f79951735" xlink:to="loc_us-gaap_BusinessCombinationDisclosureTextBlock_2754cc50-d294-4b47-9c8e-84f1276e8b9d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/AcquisitionTables" xlink:type="simple" xlink:href="form-20210327.xsd#AcquisitionTables"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/AcquisitionTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_15e7499e-59c5-4a68-9b8f-b55213f5dd32" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_df614e1c-6a71-4f3c-bd39-b3f10777a6ba" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_15e7499e-59c5-4a68-9b8f-b55213f5dd32" xlink:to="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_df614e1c-6a71-4f3c-bd39-b3f10777a6ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_8c152960-788b-46f0-bf59-a8c8b0f998c9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_15e7499e-59c5-4a68-9b8f-b55213f5dd32" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_8c152960-788b-46f0-bf59-a8c8b0f998c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#AcquisitionAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_e1d34adf-20ae-4ed0-91e9-d2fcf614ec88" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fb19bf93-ac43-4a7f-8640-579ea6fa0bab" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_e1d34adf-20ae-4ed0-91e9-d2fcf614ec88" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fb19bf93-ac43-4a7f-8640-579ea6fa0bab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_97930470-8ec0-4e2c-b9de-b17240868223" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fb19bf93-ac43-4a7f-8640-579ea6fa0bab" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_97930470-8ec0-4e2c-b9de-b17240868223" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_151f88b1-3930-4b72-8bc9-2f5066b993a9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_97930470-8ec0-4e2c-b9de-b17240868223" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_151f88b1-3930-4b72-8bc9-2f5066b993a9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_BaldwinParkMember_17dae192-e895-4006-8970-a2843eb051ad" xlink:href="form-20210327.xsd#form_BaldwinParkMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_151f88b1-3930-4b72-8bc9-2f5066b993a9" xlink:to="loc_form_BaldwinParkMember_17dae192-e895-4006-8970-a2843eb051ad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_HighPrecisionDevicesIncMember_f0142cdb-f5e9-4cec-8f42-172e54672e91" xlink:href="form-20210327.xsd#form_HighPrecisionDevicesIncMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_151f88b1-3930-4b72-8bc9-2f5066b993a9" xlink:to="loc_form_HighPrecisionDevicesIncMember_f0142cdb-f5e9-4cec-8f42-172e54672e91" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_6ce92238-10e8-4623-8b66-e4adc7a4a871" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fb19bf93-ac43-4a7f-8640-579ea6fa0bab" xlink:to="loc_srt_RangeAxis_6ce92238-10e8-4623-8b66-e4adc7a4a871" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_3d02e506-6b7f-4d9a-80f7-aaeba254a928" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_6ce92238-10e8-4623-8b66-e4adc7a4a871" xlink:to="loc_srt_RangeMember_3d02e506-6b7f-4d9a-80f7-aaeba254a928" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_58e4d058-6b36-4131-9f82-65ccdb25904f" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_3d02e506-6b7f-4d9a-80f7-aaeba254a928" xlink:to="loc_srt_MinimumMember_58e4d058-6b36-4131-9f82-65ccdb25904f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_3a5041f4-b0b9-451d-8d20-f697c00ce9db" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_fb19bf93-ac43-4a7f-8640-579ea6fa0bab" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_3a5041f4-b0b9-451d-8d20-f697c00ce9db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_9b65ea58-f80a-4c12-9628-6c3dc8706629" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_3a5041f4-b0b9-451d-8d20-f697c00ce9db" xlink:to="loc_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_9b65ea58-f80a-4c12-9628-6c3dc8706629" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_6b1a616e-e25e-4fbd-b125-ce0f34e7cde1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_3a5041f4-b0b9-451d-8d20-f697c00ce9db" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_6b1a616e-e25e-4fbd-b125-ce0f34e7cde1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_95a44609-55ee-4942-8509-b35f891d7d89" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_3a5041f4-b0b9-451d-8d20-f697c00ce9db" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_95a44609-55ee-4942-8509-b35f891d7d89" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_SensorMarketsOperatingTemperature_5102248e-26b2-4da0-a9e5-9596af0911e2" xlink:href="form-20210327.xsd#form_SensorMarketsOperatingTemperature"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_3a5041f4-b0b9-451d-8d20-f697c00ce9db" xlink:to="loc_form_SensorMarketsOperatingTemperature_5102248e-26b2-4da0-a9e5-9596af0911e2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails" xlink:type="simple" xlink:href="form-20210327.xsd#AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_8f465153-4997-47f3-bc09-01dccdae3538" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_ff9d6cdb-9e3a-445f-b69d-dd4acb796731" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_8f465153-4997-47f3-bc09-01dccdae3538" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_ff9d6cdb-9e3a-445f-b69d-dd4acb796731" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_cd6a1f2b-fd2c-45d4-8100-313b59ac1722" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_ff9d6cdb-9e3a-445f-b69d-dd4acb796731" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_cd6a1f2b-fd2c-45d4-8100-313b59ac1722" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_d3713566-42db-4aac-84e2-48608241df76" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_cd6a1f2b-fd2c-45d4-8100-313b59ac1722" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_d3713566-42db-4aac-84e2-48608241df76" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_BaldwinParkMember_557d6b02-da54-46ca-b637-e9095053c68e" xlink:href="form-20210327.xsd#form_BaldwinParkMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_d3713566-42db-4aac-84e2-48608241df76" xlink:to="loc_form_BaldwinParkMember_557d6b02-da54-46ca-b637-e9095053c68e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_HighPrecisionDevicesIncMember_dabf6f36-a2ee-4771-92a8-18e3fc94d147" xlink:href="form-20210327.xsd#form_HighPrecisionDevicesIncMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_d3713566-42db-4aac-84e2-48608241df76" xlink:to="loc_form_HighPrecisionDevicesIncMember_dabf6f36-a2ee-4771-92a8-18e3fc94d147" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_ff9d6cdb-9e3a-445f-b69d-dd4acb796731" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_2db7e212-61b9-4ace-a2bb-73c4e5e7daae" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_2db7e212-61b9-4ace-a2bb-73c4e5e7daae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_2471bb76-a241-4330-aa55-8f5f3bf696cb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_2471bb76-a241-4330-aa55-8f5f3bf696cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_59cea4fe-38f5-4c53-b9ff-943bb32444f8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_59cea4fe-38f5-4c53-b9ff-943bb32444f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_1dc17876-856c-458b-84e1-8d2d4dbf1d82" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_1dc17876-856c-458b-84e1-8d2d4dbf1d82" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets_457dc936-5356-4218-99a6-2aa4ba4349a3" xlink:href="form-20210327.xsd#form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets_457dc936-5356-4218-99a6-2aa4ba4349a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets_539cc68b-45c7-4c4b-b65c-8c2d5be0f0d2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets_539cc68b-45c7-4c4b-b65c-8c2d5be0f0d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_ba72a38e-0cd7-4a6f-a5c9-5e434ae5014d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets_ba72a38e-0cd7-4a6f-a5c9-5e434ae5014d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_bf7a18f6-9aaf-4b45-a987-1ffb16573889" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue_bf7a18f6-9aaf-4b45-a987-1ffb16573889" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_77769a1b-a3d3-4849-8cb8-61a4e4b1cd38" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_77769a1b-a3d3-4849-8cb8-61a4e4b1cd38" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation_97bf97a5-220d-4ed0-ab45-cc94b9d77bb3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation_97bf97a5-220d-4ed0-ab45-cc94b9d77bb3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_73b7f3d3-8797-4ce2-a16c-9268e5723c76" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_73b7f3d3-8797-4ce2-a16c-9268e5723c76" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_0ae891f7-0bec-435e-a067-b329527c031e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet_0ae891f7-0bec-435e-a067-b329527c031e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_742acd87-6b71-4c15-ad14-af0c091fa9ef" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill_742acd87-6b71-4c15-ad14-af0c091fa9ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_a3eb1f99-c952-4c7d-8436-5b8600ff17e0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_Goodwill_a3eb1f99-c952-4c7d-8436-5b8600ff17e0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_3e3c5181-bd26-4f58-b2a5-715d8aaa07e8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_03385efa-facc-4afb-87b6-74e06275ff90" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_3e3c5181-bd26-4f58-b2a5-715d8aaa07e8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails" xlink:type="simple" xlink:href="form-20210327.xsd#AcquisitionIntangibleAssetsAcquiredDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_db891ad7-d588-4722-857d-f9c46d263f69" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_bd36416b-9fb3-4208-888c-b5f8a7099c74" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_db891ad7-d588-4722-857d-f9c46d263f69" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_bd36416b-9fb3-4208-888c-b5f8a7099c74" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_9365bdee-288e-492c-ad45-a25344826d9d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_bd36416b-9fb3-4208-888c-b5f8a7099c74" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_9365bdee-288e-492c-ad45-a25344826d9d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_90836312-27d7-42ab-bf08-9cf3f1f471d6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_9365bdee-288e-492c-ad45-a25344826d9d" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_90836312-27d7-42ab-bf08-9cf3f1f471d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DevelopedTechnologyRightsMember_8be94914-4436-4f41-a2e6-b6e37f672d84" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DevelopedTechnologyRightsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_90836312-27d7-42ab-bf08-9cf3f1f471d6" xlink:to="loc_us-gaap_DevelopedTechnologyRightsMember_8be94914-4436-4f41-a2e6-b6e37f672d84" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_3354b18b-0313-4645-b30a-270d9f9fed97" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_90836312-27d7-42ab-bf08-9cf3f1f471d6" xlink:to="loc_us-gaap_CustomerRelationshipsMember_3354b18b-0313-4645-b30a-270d9f9fed97" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrderOrProductionBacklogMember_32f08474-e6b6-4c91-be51-08add1155613" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OrderOrProductionBacklogMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_90836312-27d7-42ab-bf08-9cf3f1f471d6" xlink:to="loc_us-gaap_OrderOrProductionBacklogMember_32f08474-e6b6-4c91-be51-08add1155613" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradeNamesMember_2c45eb15-282a-4229-8dc1-f974c765088c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TradeNamesMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_90836312-27d7-42ab-bf08-9cf3f1f471d6" xlink:to="loc_us-gaap_TradeNamesMember_2c45eb15-282a-4229-8dc1-f974c765088c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_4f64c5c6-ee49-4650-a40b-88618a569720" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_bd36416b-9fb3-4208-888c-b5f8a7099c74" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_4f64c5c6-ee49-4650-a40b-88618a569720" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dd7d6341-7120-4e6b-bd8f-033d7a92b639" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_4f64c5c6-ee49-4650-a40b-88618a569720" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dd7d6341-7120-4e6b-bd8f-033d7a92b639" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_HighPrecisionDevicesIncMember_1d78c537-5b9a-4396-96f9-1f4cb28e104b" xlink:href="form-20210327.xsd#form_HighPrecisionDevicesIncMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dd7d6341-7120-4e6b-bd8f-033d7a92b639" xlink:to="loc_form_HighPrecisionDevicesIncMember_1d78c537-5b9a-4396-96f9-1f4cb28e104b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_BaldwinParkMember_ac63aebe-2bfe-4068-97a7-99c6bec60c07" xlink:href="form-20210327.xsd#form_BaldwinParkMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_dd7d6341-7120-4e6b-bd8f-033d7a92b639" xlink:to="loc_form_BaldwinParkMember_ac63aebe-2bfe-4068-97a7-99c6bec60c07" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_7c6b599c-858c-41c4-be93-294a60096413" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_bd36416b-9fb3-4208-888c-b5f8a7099c74" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_7c6b599c-858c-41c4-be93-294a60096413" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_20f74302-7bc0-4815-bb49-b16c11024d84" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_7c6b599c-858c-41c4-be93-294a60096413" xlink:to="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_20f74302-7bc0-4815-bb49-b16c11024d84" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InProcessResearchAndDevelopmentMember_f96f7d43-a874-4cb2-8995-cd7a9c64e255" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InProcessResearchAndDevelopmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_20f74302-7bc0-4815-bb49-b16c11024d84" xlink:to="loc_us-gaap_InProcessResearchAndDevelopmentMember_f96f7d43-a874-4cb2-8995-cd7a9c64e255" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_8dc86216-6d09-41db-a635-e3648d464be1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_bd36416b-9fb3-4208-888c-b5f8a7099c74" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_8dc86216-6d09-41db-a635-e3648d464be1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_52ea4635-46a6-407f-ad9f-3f37f11066e8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_8dc86216-6d09-41db-a635-e3648d464be1" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_52ea4635-46a6-407f-ad9f-3f37f11066e8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_9a11e1ff-d7cc-429f-b814-6394107e8b45" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_8dc86216-6d09-41db-a635-e3648d464be1" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_9a11e1ff-d7cc-429f-b814-6394107e8b45" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssets" xlink:type="simple" xlink:href="form-20210327.xsd#GoodwillandIntangibleAssets"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/GoodwillandIntangibleAssets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_54b4355c-b6c0-41a1-ad24-9a47b3adf568" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsDisclosureTextBlock_4e421eb9-3001-4043-85b4-e0673b58a144" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_54b4355c-b6c0-41a1-ad24-9a47b3adf568" xlink:to="loc_us-gaap_IntangibleAssetsDisclosureTextBlock_4e421eb9-3001-4043-85b4-e0673b58a144" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsTables" xlink:type="simple" xlink:href="form-20210327.xsd#GoodwillandIntangibleAssetsTables"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/GoodwillandIntangibleAssetsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_f0fa5363-edaf-4380-b707-d5e4d4b20051" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTextBlock_c182d8f5-1d63-4de5-9357-d1451ebc42bb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfGoodwillTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_f0fa5363-edaf-4380-b707-d5e4d4b20051" xlink:to="loc_us-gaap_ScheduleOfGoodwillTextBlock_c182d8f5-1d63-4de5-9357-d1451ebc42bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_3a312927-1162-43ef-912e-10eaefb5b304" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_f0fa5363-edaf-4380-b707-d5e4d4b20051" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_3a312927-1162-43ef-912e-10eaefb5b304" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock_79b98ddf-b853-43e8-a77a-4c1801093d54" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_f0fa5363-edaf-4380-b707-d5e4d4b20051" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock_79b98ddf-b853-43e8-a77a-4c1801093d54" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_c972bb28-a660-42bd-98b5-ac3467dcd8b5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_f0fa5363-edaf-4380-b707-d5e4d4b20051" xlink:to="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_c972bb28-a660-42bd-98b5-ac3467dcd8b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails" xlink:type="simple" xlink:href="form-20210327.xsd#GoodwillandIntangibleAssetsGoodwillDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_71d4d1bd-71ff-4503-82ac-eb548eae866a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTable_6a59061d-db81-4bff-b4be-67e4b2f89411" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfGoodwillTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_71d4d1bd-71ff-4503-82ac-eb548eae866a" xlink:to="loc_us-gaap_ScheduleOfGoodwillTable_6a59061d-db81-4bff-b4be-67e4b2f89411" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_b6120b77-ab5a-4cc7-a141-c6a0857ba163" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_6a59061d-db81-4bff-b4be-67e4b2f89411" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_b6120b77-ab5a-4cc7-a141-c6a0857ba163" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_5062cd29-39d7-4dcd-b265-8f9efe2e6414" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_b6120b77-ab5a-4cc7-a141-c6a0857ba163" xlink:to="loc_us-gaap_SegmentDomain_5062cd29-39d7-4dcd-b265-8f9efe2e6414" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_ProbeCardsSegmentMember_0105571b-ff89-4af0-929e-1493cb0a2cbd" xlink:href="form-20210327.xsd#form_ProbeCardsSegmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_5062cd29-39d7-4dcd-b265-8f9efe2e6414" xlink:to="loc_form_ProbeCardsSegmentMember_0105571b-ff89-4af0-929e-1493cb0a2cbd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_SystemsSegmentMember_a6161044-e137-4174-8eee-066c0c6d52f2" xlink:href="form-20210327.xsd#form_SystemsSegmentMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_5062cd29-39d7-4dcd-b265-8f9efe2e6414" xlink:to="loc_form_SystemsSegmentMember_a6161044-e137-4174-8eee-066c0c6d52f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_b1074732-59d9-41da-81b4-5c7506875d37" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_6a59061d-db81-4bff-b4be-67e4b2f89411" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_b1074732-59d9-41da-81b4-5c7506875d37" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f050d04e-7f5c-4953-8b0d-5f957d10fdd4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_b1074732-59d9-41da-81b4-5c7506875d37" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f050d04e-7f5c-4953-8b0d-5f957d10fdd4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_FRTGmbHMember_4571de0d-f43a-4e29-9166-15ceda9a5fd8" xlink:href="form-20210327.xsd#form_FRTGmbHMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f050d04e-7f5c-4953-8b0d-5f957d10fdd4" xlink:to="loc_form_FRTGmbHMember_4571de0d-f43a-4e29-9166-15ceda9a5fd8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_BaldwinParkMember_cec2ae17-9443-4b30-9dc0-47c7d5457376" xlink:href="form-20210327.xsd#form_BaldwinParkMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f050d04e-7f5c-4953-8b0d-5f957d10fdd4" xlink:to="loc_form_BaldwinParkMember_cec2ae17-9443-4b30-9dc0-47c7d5457376" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_HighPrecisionDevicesIncMember_37e2f552-3040-4e2c-9e29-46e592baaf4a" xlink:href="form-20210327.xsd#form_HighPrecisionDevicesIncMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_f050d04e-7f5c-4953-8b0d-5f957d10fdd4" xlink:to="loc_form_HighPrecisionDevicesIncMember_37e2f552-3040-4e2c-9e29-46e592baaf4a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillLineItems_9869d3be-66d1-4588-bf92-12625c08f79d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfGoodwillTable_6a59061d-db81-4bff-b4be-67e4b2f89411" xlink:to="loc_us-gaap_GoodwillLineItems_9869d3be-66d1-4588-bf92-12625c08f79d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillRollForward_56444a85-9c64-49ea-b0e3-f15b0b327e6e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillLineItems_9869d3be-66d1-4588-bf92-12625c08f79d" xlink:to="loc_us-gaap_GoodwillRollForward_56444a85-9c64-49ea-b0e3-f15b0b327e6e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_1299f485-6e2f-4a52-8d3d-e5dea80bfc93" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_56444a85-9c64-49ea-b0e3-f15b0b327e6e" xlink:to="loc_us-gaap_Goodwill_1299f485-6e2f-4a52-8d3d-e5dea80bfc93" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod_87fdbd30-51e4-4a9b-a006-f25725251bc0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAcquiredDuringPeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_56444a85-9c64-49ea-b0e3-f15b0b327e6e" xlink:to="loc_us-gaap_GoodwillAcquiredDuringPeriod_87fdbd30-51e4-4a9b-a006-f25725251bc0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_e69433ed-27ec-427c-9264-8d9cabf9b40a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_56444a85-9c64-49ea-b0e3-f15b0b327e6e" xlink:to="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_e69433ed-27ec-427c-9264-8d9cabf9b40a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_b6d23d37-31fd-4e34-8aef-fb825632bfd0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_56444a85-9c64-49ea-b0e3-f15b0b327e6e" xlink:to="loc_us-gaap_Goodwill_b6d23d37-31fd-4e34-8aef-fb825632bfd0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsAdditionalinformationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#GoodwillandIntangibleAssetsAdditionalinformationDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/GoodwillandIntangibleAssetsAdditionalinformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_d5cc2a5f-fc57-4287-a7ab-5ff79cfab861" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillImpairmentLoss_524d1423-faf2-4387-a56c-2342dd4c6f76" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillImpairmentLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_d5cc2a5f-fc57-4287-a7ab-5ff79cfab861" xlink:to="loc_us-gaap_GoodwillImpairmentLoss_524d1423-faf2-4387-a56c-2342dd4c6f76" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails" xlink:type="simple" xlink:href="form-20210327.xsd#GoodwillandIntangibleAssetsIntangibleAssetsDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_5f600aef-2082-4732-b699-6721b8e8e1f8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_d4d96faf-8368-4ebe-848c-e74c4ff7e36d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_5f600aef-2082-4732-b699-6721b8e8e1f8" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_d4d96faf-8368-4ebe-848c-e74c4ff7e36d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_9c5031b5-644d-4f7c-9fef-844df9231aae" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_d4d96faf-8368-4ebe-848c-e74c4ff7e36d" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_9c5031b5-644d-4f7c-9fef-844df9231aae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ea01af58-4386-4b3b-831f-1c6c2c227c18" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_9c5031b5-644d-4f7c-9fef-844df9231aae" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ea01af58-4386-4b3b-831f-1c6c2c227c18" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_ExistingDevelopedTechnologiesMember_a80b56f5-6e9f-4836-be39-09cc153040a7" xlink:href="form-20210327.xsd#form_ExistingDevelopedTechnologiesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ea01af58-4386-4b3b-831f-1c6c2c227c18" xlink:to="loc_form_ExistingDevelopedTechnologiesMember_a80b56f5-6e9f-4836-be39-09cc153040a7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradeNamesMember_01b3cea5-62a4-4404-a258-8507348c6c70" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TradeNamesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ea01af58-4386-4b3b-831f-1c6c2c227c18" xlink:to="loc_us-gaap_TradeNamesMember_01b3cea5-62a4-4404-a258-8507348c6c70" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerRelationshipsMember_e336df26-a597-4113-8077-8ad34a434a5a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CustomerRelationshipsMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ea01af58-4386-4b3b-831f-1c6c2c227c18" xlink:to="loc_us-gaap_CustomerRelationshipsMember_e336df26-a597-4113-8077-8ad34a434a5a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrderOrProductionBacklogMember_2825ff35-708f-409f-b798-8d1bf12b1bba" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OrderOrProductionBacklogMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ea01af58-4386-4b3b-831f-1c6c2c227c18" xlink:to="loc_us-gaap_OrderOrProductionBacklogMember_2825ff35-708f-409f-b798-8d1bf12b1bba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InProcessResearchAndDevelopmentMember_3f4ab436-6253-4d3a-bc6d-6ab2264862b4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InProcessResearchAndDevelopmentMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_ea01af58-4386-4b3b-831f-1c6c2c227c18" xlink:to="loc_us-gaap_InProcessResearchAndDevelopmentMember_3f4ab436-6253-4d3a-bc6d-6ab2264862b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_7234579a-2d57-437a-965f-4ac0466753f6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_d4d96faf-8368-4ebe-848c-e74c4ff7e36d" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_7234579a-2d57-437a-965f-4ac0466753f6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_905a798e-a08c-423e-ac91-884a2ed26328" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_7234579a-2d57-437a-965f-4ac0466753f6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_905a798e-a08c-423e-ac91-884a2ed26328" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_410072ec-28c2-442d-8fdd-9546eb375485" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_7234579a-2d57-437a-965f-4ac0466753f6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_410072ec-28c2-442d-8fdd-9546eb375485" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_e12689fc-7fc6-49cd-aa39-238edd79c0d2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_7234579a-2d57-437a-965f-4ac0466753f6" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_e12689fc-7fc6-49cd-aa39-238edd79c0d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails" xlink:type="simple" xlink:href="form-20210327.xsd#GoodwillandIntangibleAssetsAmortizationExpenseDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_7709a10b-58e2-4862-9b33-5eda1493273e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_98d3a59e-6b49-483c-a4a2-d362a8168f0d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_7709a10b-58e2-4862-9b33-5eda1493273e" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_98d3a59e-6b49-483c-a4a2-d362a8168f0d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_437d5dee-657e-4c49-8b66-cc8e40b10c25" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_98d3a59e-6b49-483c-a4a2-d362a8168f0d" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_437d5dee-657e-4c49-8b66-cc8e40b10c25" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_dd9cbd36-d0b4-463a-858e-9e2acda7d5c1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_437d5dee-657e-4c49-8b66-cc8e40b10c25" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_dd9cbd36-d0b4-463a-858e-9e2acda7d5c1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_011a6c5d-e010-4fc7-9eea-7ee14914c8dc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfSalesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_dd9cbd36-d0b4-463a-858e-9e2acda7d5c1" xlink:to="loc_us-gaap_CostOfSalesMember_011a6c5d-e010-4fc7-9eea-7ee14914c8dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_43da1d2f-567a-4780-a31c-22e29b304297" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_dd9cbd36-d0b4-463a-858e-9e2acda7d5c1" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_43da1d2f-567a-4780-a31c-22e29b304297" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_e2fe07fa-1a2a-4ff1-b83f-5491ff713fee" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_98d3a59e-6b49-483c-a4a2-d362a8168f0d" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentLineItems_e2fe07fa-1a2a-4ff1-b83f-5491ff713fee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_a6550ab0-32e6-47b5-864a-57ae5e675503" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_e2fe07fa-1a2a-4ff1-b83f-5491ff713fee" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_a6550ab0-32e6-47b5-864a-57ae5e675503" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_78d4e6ca-38e7-43e3-936b-0e6a27365e0a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_e2fe07fa-1a2a-4ff1-b83f-5491ff713fee" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_78d4e6ca-38e7-43e3-936b-0e6a27365e0a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_75466c32-7c03-4d41-85c1-50f2a4f9fd04" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_78d4e6ca-38e7-43e3-936b-0e6a27365e0a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_75466c32-7c03-4d41-85c1-50f2a4f9fd04" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_f52226c6-598c-407f-b180-63b6db24845d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_78d4e6ca-38e7-43e3-936b-0e6a27365e0a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_f52226c6-598c-407f-b180-63b6db24845d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_a58bb3b1-2fe8-453b-9770-b2e5d78fc83f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_78d4e6ca-38e7-43e3-936b-0e6a27365e0a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_a58bb3b1-2fe8-453b-9770-b2e5d78fc83f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_cf3c7484-65d6-4053-b65b-1397b9230077" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_78d4e6ca-38e7-43e3-936b-0e6a27365e0a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_cf3c7484-65d6-4053-b65b-1397b9230077" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_272032ca-4a39-457a-95e6-f4776a773ec4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_78d4e6ca-38e7-43e3-936b-0e6a27365e0a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_272032ca-4a39-457a-95e6-f4776a773ec4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour_99c08acf-1c07-4507-bd6b-4e0ab620108d" xlink:href="form-20210327.xsd#form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_78d4e6ca-38e7-43e3-936b-0e6a27365e0a" xlink:to="loc_form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour_99c08acf-1c07-4507-bd6b-4e0ab620108d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal_a9f5e329-17da-4eab-8612-d25f77e5bcaf" xlink:href="form-20210327.xsd#form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract_78d4e6ca-38e7-43e3-936b-0e6a27365e0a" xlink:to="loc_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal_a9f5e329-17da-4eab-8612-d25f77e5bcaf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/AccruedLiabilities" xlink:type="simple" xlink:href="form-20210327.xsd#AccruedLiabilities"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/AccruedLiabilities" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PayablesAndAccrualsAbstract_3af4f144-0708-4d51-b911-079fd377171f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PayablesAndAccrualsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_bbe73d9f-9c70-4600-b10a-af972394c53a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_3af4f144-0708-4d51-b911-079fd377171f" xlink:to="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_bbe73d9f-9c70-4600-b10a-af972394c53a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/AccruedLiabilitiesTables" xlink:type="simple" xlink:href="form-20210327.xsd#AccruedLiabilitiesTables"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/AccruedLiabilitiesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PayablesAndAccrualsAbstract_80261a15-1d6b-4f54-9770-ffbb70dfed83" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PayablesAndAccrualsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_69d62d9e-85fd-4204-a3aa-86ff8607a8ec" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_80261a15-1d6b-4f54-9770-ffbb70dfed83" xlink:to="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_69d62d9e-85fd-4204-a3aa-86ff8607a8ec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/AccruedLiabilitiesDetails" xlink:type="simple" xlink:href="form-20210327.xsd#AccruedLiabilitiesDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/AccruedLiabilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PayablesAndAccrualsAbstract_17c876f3-9c41-4785-84f8-b84f16c92614" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PayablesAndAccrualsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_d7ab4cd3-5db5-44dd-8edb-f70970b21f8e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_17c876f3-9c41-4785-84f8-b84f16c92614" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_d7ab4cd3-5db5-44dd-8edb-f70970b21f8e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TaxesPayableCurrentAndNoncurrent_a3052bfc-4deb-4fa0-ad9a-51d77b38efea" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TaxesPayableCurrentAndNoncurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_17c876f3-9c41-4785-84f8-b84f16c92614" xlink:to="loc_us-gaap_TaxesPayableCurrentAndNoncurrent_a3052bfc-4deb-4fa0-ad9a-51d77b38efea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_94924fcd-02fb-48f0-9f61-f0b6f25451fb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyAccrualClassifiedCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_17c876f3-9c41-4785-84f8-b84f16c92614" xlink:to="loc_us-gaap_ProductWarrantyAccrualClassifiedCurrent_94924fcd-02fb-48f0-9f61-f0b6f25451fb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedEmployeeBenefitsCurrent_ce9a4c8b-c353-48ec-a2ed-bf3b018fe668" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedEmployeeBenefitsCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_17c876f3-9c41-4785-84f8-b84f16c92614" xlink:to="loc_us-gaap_AccruedEmployeeBenefitsCurrent_ce9a4c8b-c353-48ec-a2ed-bf3b018fe668" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent_933025c8-f3b3-4489-b8dc-d1c3d33ccd35" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_17c876f3-9c41-4785-84f8-b84f16c92614" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent_933025c8-f3b3-4489-b8dc-d1c3d33ccd35" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_e9c727e6-e2fd-491a-ad77-b92777161bf1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_17c876f3-9c41-4785-84f8-b84f16c92614" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent_e9c727e6-e2fd-491a-ad77-b92777161bf1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_1f6b579f-b71a-4ad8-9c99-6d382a050ff1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PayablesAndAccrualsAbstract_17c876f3-9c41-4785-84f8-b84f16c92614" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_1f6b579f-b71a-4ad8-9c99-6d382a050ff1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstruments" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstruments"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstruments" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_915b343b-8288-4a8c-a5ce-cc25e3f8c292" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresTextBlock_7b7887a5-2a58-4011-8fd1-9df3e0e49ed5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueDisclosuresTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_915b343b-8288-4a8c-a5ce-cc25e3f8c292" xlink:to="loc_us-gaap_FairValueDisclosuresTextBlock_7b7887a5-2a58-4011-8fd1-9df3e0e49ed5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsTables" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsTables"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_2d7a73df-fc2f-4aa9-bfd3-acd3aae10b45" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_fedb2668-d9a4-4539-8861-278bd4f782c0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_2d7a73df-fc2f-4aa9-bfd3-acd3aae10b45" xlink:to="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_fedb2668-d9a4-4539-8861-278bd4f782c0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock_7bb6b994-126b-41f8-b34e-e38a384e61f2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_2d7a73df-fc2f-4aa9-bfd3-acd3aae10b45" xlink:to="loc_us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock_7bb6b994-126b-41f8-b34e-e38a384e61f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock_1b0bed96-86d4-4dbb-928e-7c6c8761aca4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_2d7a73df-fc2f-4aa9-bfd3-acd3aae10b45" xlink:to="loc_us-gaap_ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock_1b0bed96-86d4-4dbb-928e-7c6c8761aca4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock_a15e9c63-d414-4369-a8e3-114f86d43776" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_2d7a73df-fc2f-4aa9-bfd3-acd3aae10b45" xlink:to="loc_us-gaap_ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock_a15e9c63-d414-4369-a8e3-114f86d43776" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_057db59f-eb63-4742-85d8-b31b628c36b4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cd06db7b-c3cb-465f-a2be-1ac78f066b9e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByBalanceSheetGroupingTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_057db59f-eb63-4742-85d8-b31b628c36b4" xlink:to="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cd06db7b-c3cb-465f-a2be-1ac78f066b9e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_22426492-a425-4915-9e07-4bdeb8cb61dd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cd06db7b-c3cb-465f-a2be-1ac78f066b9e" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_22426492-a425-4915-9e07-4bdeb8cb61dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_76bbd1f7-d874-4ea8-8d40-fa275e93e08a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_22426492-a425-4915-9e07-4bdeb8cb61dd" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_76bbd1f7-d874-4ea8-8d40-fa275e93e08a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_40747c66-98d1-4e70-a0ba-e68a8f5603cf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_76bbd1f7-d874-4ea8-8d40-fa275e93e08a" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_40747c66-98d1-4e70-a0ba-e68a8f5603cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_f4e43c70-650a-4846-9fff-be0e232a5943" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_76bbd1f7-d874-4ea8-8d40-fa275e93e08a" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_f4e43c70-650a-4846-9fff-be0e232a5943" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_f41e947a-336d-415f-b181-dd0cf6aa55f2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_76bbd1f7-d874-4ea8-8d40-fa275e93e08a" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_f41e947a-336d-415f-b181-dd0cf6aa55f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByAssetClassAxis_8624f6d5-b722-49c3-9da9-e12ed6793cc6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByAssetClassAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cd06db7b-c3cb-465f-a2be-1ac78f066b9e" xlink:to="loc_us-gaap_FairValueByAssetClassAxis_8624f6d5-b722-49c3-9da9-e12ed6793cc6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_5d2f547d-49e0-459c-91bb-66ffe76150f1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByAssetClassAxis_8624f6d5-b722-49c3-9da9-e12ed6793cc6" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_5d2f547d-49e0-459c-91bb-66ffe76150f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MoneyMarketFundsMember_c9454d94-b355-42b1-bd30-59bb78c51ec7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MoneyMarketFundsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_5d2f547d-49e0-459c-91bb-66ffe76150f1" xlink:to="loc_us-gaap_MoneyMarketFundsMember_c9454d94-b355-42b1-bd30-59bb78c51ec7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommercialPaperMember_f258fd2a-c515-407a-91f0-3de32b8b5cc1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommercialPaperMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_5d2f547d-49e0-459c-91bb-66ffe76150f1" xlink:to="loc_us-gaap_CommercialPaperMember_f258fd2a-c515-407a-91f0-3de32b8b5cc1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USTreasuryBillSecuritiesMember_26347c62-dea7-44c0-af56-3ab74765245f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_USTreasuryBillSecuritiesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_5d2f547d-49e0-459c-91bb-66ffe76150f1" xlink:to="loc_us-gaap_USTreasuryBillSecuritiesMember_26347c62-dea7-44c0-af56-3ab74765245f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CertificatesOfDepositMember_66130a2f-89d2-40a0-a216-dc44cd07b90c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CertificatesOfDepositMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_5d2f547d-49e0-459c-91bb-66ffe76150f1" xlink:to="loc_us-gaap_CertificatesOfDepositMember_66130a2f-89d2-40a0-a216-dc44cd07b90c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USGovernmentAgenciesDebtSecuritiesMember_f9e9e5a1-7e43-4836-addf-1f411d09685d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_USGovernmentAgenciesDebtSecuritiesMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_5d2f547d-49e0-459c-91bb-66ffe76150f1" xlink:to="loc_us-gaap_USGovernmentAgenciesDebtSecuritiesMember_f9e9e5a1-7e43-4836-addf-1f411d09685d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_e9941266-31aa-4e67-9202-93a257a46d88" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CorporateBondSecuritiesMember"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_5d2f547d-49e0-459c-91bb-66ffe76150f1" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_e9941266-31aa-4e67-9202-93a257a46d88" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_c46c567c-6e18-49f9-84de-1f62c6bad7bf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cd06db7b-c3cb-465f-a2be-1ac78f066b9e" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_c46c567c-6e18-49f9-84de-1f62c6bad7bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_9b678721-74c6-4672-be09-b0b31d9b1428" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_c46c567c-6e18-49f9-84de-1f62c6bad7bf" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_9b678721-74c6-4672-be09-b0b31d9b1428" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignExchangeContractMember_304a3ec2-3fb3-4bfb-af58-2ca5929cc432" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ForeignExchangeContractMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_9b678721-74c6-4672-be09-b0b31d9b1428" xlink:to="loc_us-gaap_ForeignExchangeContractMember_304a3ec2-3fb3-4bfb-af58-2ca5929cc432" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestRateSwapMember_87a5afd5-03de-4ff5-b094-9efa62dc102f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InterestRateSwapMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_9b678721-74c6-4672-be09-b0b31d9b1428" xlink:to="loc_us-gaap_InterestRateSwapMember_87a5afd5-03de-4ff5-b094-9efa62dc102f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_2efee886-31e1-4756-bb64-20a32cfe4f16" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cd06db7b-c3cb-465f-a2be-1ac78f066b9e" xlink:to="loc_us-gaap_HedgingDesignationAxis_2efee886-31e1-4756-bb64-20a32cfe4f16" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_45a47949-7a23-4c01-99e0-4ab7c16314e3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationAxis_2efee886-31e1-4756-bb64-20a32cfe4f16" xlink:to="loc_us-gaap_HedgingDesignationDomain_45a47949-7a23-4c01-99e0-4ab7c16314e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_adc59195-9e7c-4339-9100-e7f0b9ae9fbe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DesignatedAsHedgingInstrumentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationDomain_45a47949-7a23-4c01-99e0-4ab7c16314e3" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_adc59195-9e7c-4339-9100-e7f0b9ae9fbe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_023b5d4c-f9b6-4b04-8121-2591d87d1c56" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cd06db7b-c3cb-465f-a2be-1ac78f066b9e" xlink:to="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_023b5d4c-f9b6-4b04-8121-2591d87d1c56" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_db432ac2-e3b1-4c04-b688-f8acca3afbc1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsFairValueDisclosure"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_023b5d4c-f9b6-4b04-8121-2591d87d1c56" xlink:to="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_db432ac2-e3b1-4c04-b688-f8acca3afbc1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MarketableSecurities_e478c61b-4ced-40ee-96ab-c8bcba05c4fe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MarketableSecurities"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_023b5d4c-f9b6-4b04-8121-2591d87d1c56" xlink:to="loc_us-gaap_MarketableSecurities_e478c61b-4ced-40ee-96ab-c8bcba05c4fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssets_bf25323b-a5ee-42a6-860c-ce758f329ee1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeAssets"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_023b5d4c-f9b6-4b04-8121-2591d87d1c56" xlink:to="loc_us-gaap_DerivativeAssets_bf25323b-a5ee-42a6-860c-ce758f329ee1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsFairValueDisclosure_cb1c24fe-38e1-4b06-b5cd-52c4b0c5544c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsFairValueDisclosure"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_023b5d4c-f9b6-4b04-8121-2591d87d1c56" xlink:to="loc_us-gaap_AssetsFairValueDisclosure_cb1c24fe-38e1-4b06-b5cd-52c4b0c5544c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLiabilities_79493a20-0de3-4eff-b4e1-3b3e42309db1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeLiabilities"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_023b5d4c-f9b6-4b04-8121-2591d87d1c56" xlink:to="loc_us-gaap_DerivativeLiabilities_79493a20-0de3-4eff-b4e1-3b3e42309db1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_db03fbe6-a1cd-45cf-8579-fdcaac91f546" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_023b5d4c-f9b6-4b04-8121-2591d87d1c56" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_db03fbe6-a1cd-45cf-8579-fdcaac91f546" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosure_d5db04f5-d4cd-40b9-8451-083d44ad615a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesFairValueDisclosure"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_023b5d4c-f9b6-4b04-8121-2591d87d1c56" xlink:to="loc_us-gaap_LiabilitiesFairValueDisclosure_d5db04f5-d4cd-40b9-8451-083d44ad615a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAdditionalInformationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_6836c774-4655-4215-8efe-9e30732b936a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByBalanceSheetGroupingTable_6856d9fe-cca9-46e2-8ca7-de0b828cc553" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByBalanceSheetGroupingTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_6836c774-4655-4215-8efe-9e30732b936a" xlink:to="loc_us-gaap_FairValueByBalanceSheetGroupingTable_6856d9fe-cca9-46e2-8ca7-de0b828cc553" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_33e8a702-67e0-4858-b985-0e240a023cbf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_6856d9fe-cca9-46e2-8ca7-de0b828cc553" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_33e8a702-67e0-4858-b985-0e240a023cbf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_0b7116e1-ea6e-46bb-b1d8-f892206a40eb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_33e8a702-67e0-4858-b985-0e240a023cbf" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_0b7116e1-ea6e-46bb-b1d8-f892206a40eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_FRTMember_ef71007c-84a3-41ee-91b0-3d6c33f2098a" xlink:href="form-20210327.xsd#form_FRTMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_0b7116e1-ea6e-46bb-b1d8-f892206a40eb" xlink:to="loc_form_FRTMember_ef71007c-84a3-41ee-91b0-3d6c33f2098a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_79226f7b-16d1-4cb8-9e79-cfe6d4d13336" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_6856d9fe-cca9-46e2-8ca7-de0b828cc553" xlink:to="loc_srt_RangeAxis_79226f7b-16d1-4cb8-9e79-cfe6d4d13336" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_d75279bf-feb4-473b-8e81-473a150dbd39" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_79226f7b-16d1-4cb8-9e79-cfe6d4d13336" xlink:to="loc_srt_RangeMember_d75279bf-feb4-473b-8e81-473a150dbd39" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_4963ee63-4145-4c0c-97a5-34628c31070a" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_d75279bf-feb4-473b-8e81-473a150dbd39" xlink:to="loc_srt_MaximumMember_4963ee63-4145-4c0c-97a5-34628c31070a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_1b245d74-9e0e-4108-bb1e-b5b008bbd2e5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_6856d9fe-cca9-46e2-8ca7-de0b828cc553" xlink:to="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_1b245d74-9e0e-4108-bb1e-b5b008bbd2e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_ContingentConsiderationCalculationAmountMultipleOfEBIT_ad27e362-db8c-43e2-8d62-a2afefeedc37" xlink:href="form-20210327.xsd#form_ContingentConsiderationCalculationAmountMultipleOfEBIT"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_1b245d74-9e0e-4108-bb1e-b5b008bbd2e5" xlink:to="loc_form_ContingentConsiderationCalculationAmountMultipleOfEBIT_ad27e362-db8c-43e2-8d62-a2afefeedc37" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_8fb024cf-50be-4c6c-aef4-8f58e929d30f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BusinessCombinationContingentConsiderationLiability"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_1b245d74-9e0e-4108-bb1e-b5b008bbd2e5" xlink:to="loc_us-gaap_BusinessCombinationContingentConsiderationLiability_8fb024cf-50be-4c6c-aef4-8f58e929d30f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_02d8ecc6-054b-480f-a31a-85f2ae615759" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_7370da16-3478-4894-96e9-b0fbade47745" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_02d8ecc6-054b-480f-a31a-85f2ae615759" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_7370da16-3478-4894-96e9-b0fbade47745" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_2def88cd-c7af-4dde-91db-3d153919ce86" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_7370da16-3478-4894-96e9-b0fbade47745" xlink:to="loc_us-gaap_HedgingDesignationAxis_2def88cd-c7af-4dde-91db-3d153919ce86" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_658046c9-dde0-4211-913b-dde7e4cc42df" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationAxis_2def88cd-c7af-4dde-91db-3d153919ce86" xlink:to="loc_us-gaap_HedgingDesignationDomain_658046c9-dde0-4211-913b-dde7e4cc42df" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_9e42718d-f76b-49b0-a537-a740bd4b620e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DesignatedAsHedgingInstrumentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationDomain_658046c9-dde0-4211-913b-dde7e4cc42df" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_9e42718d-f76b-49b0-a537-a740bd4b620e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_d3f1d5de-a26a-4d43-a1a7-ce476fc2f8ce" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_7370da16-3478-4894-96e9-b0fbade47745" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_d3f1d5de-a26a-4d43-a1a7-ce476fc2f8ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_f6ecc03f-61ab-4623-a6da-702bbdcb6b97" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_d3f1d5de-a26a-4d43-a1a7-ce476fc2f8ce" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_f6ecc03f-61ab-4623-a6da-702bbdcb6b97" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestRateSwapMember_65550aab-4c04-4214-911d-d9f7611fec1c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InterestRateSwapMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_f6ecc03f-61ab-4623-a6da-702bbdcb6b97" xlink:to="loc_us-gaap_InterestRateSwapMember_65550aab-4c04-4214-911d-d9f7611fec1c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_e0635a46-bf30-471b-972d-1453736fe11c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_7370da16-3478-4894-96e9-b0fbade47745" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_e0635a46-bf30-471b-972d-1453736fe11c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingRelationshipDomain_90229c2d-2599-4b34-b9a4-f49de9188fb0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingRelationshipDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_e0635a46-bf30-471b-972d-1453736fe11c" xlink:to="loc_us-gaap_HedgingRelationshipDomain_90229c2d-2599-4b34-b9a4-f49de9188fb0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashFlowHedgingMember_edd5f3f7-88ea-4f4a-8085-5e3d3add7838" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashFlowHedgingMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingRelationshipDomain_90229c2d-2599-4b34-b9a4-f49de9188fb0" xlink:to="loc_us-gaap_CashFlowHedgingMember_edd5f3f7-88ea-4f4a-8085-5e3d3add7838" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_7ae5bf7a-eb6e-47b2-a973-4464d41ffa3a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_7370da16-3478-4894-96e9-b0fbade47745" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_7ae5bf7a-eb6e-47b2-a973-4464d41ffa3a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_e01fc8fb-b802-4571-aea6-e336f5df0b8d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_7ae5bf7a-eb6e-47b2-a973-4464d41ffa3a" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_e01fc8fb-b802-4571-aea6-e336f5df0b8d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember_e0fee4e7-1dc2-43b6-a157-3720baae5671" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_e01fc8fb-b802-4571-aea6-e336f5df0b8d" xlink:to="loc_us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember_e0fee4e7-1dc2-43b6-a157-3720baae5671" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_c09cbd73-6a85-4ea6-b318-442f5c0a525e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_7370da16-3478-4894-96e9-b0fbade47745" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_c09cbd73-6a85-4ea6-b318-442f5c0a525e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax_193bc6b2-8169-4dfa-b981-dfd9b00c4f52" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_c09cbd73-6a85-4ea6-b318-442f5c0a525e" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax_193bc6b2-8169-4dfa-b981-dfd9b00c4f52" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax_4cac5f19-f445-4841-b100-d77aea889065" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_c09cbd73-6a85-4ea6-b318-442f5c0a525e" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax_4cac5f19-f445-4841-b100-d77aea889065" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_ee823632-5144-46c6-9129-c3e7261c7933" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeTable_ce08195e-9b2d-44fb-89c7-40648fbfa2fc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_ee823632-5144-46c6-9129-c3e7261c7933" xlink:to="loc_us-gaap_DerivativeTable_ce08195e-9b2d-44fb-89c7-40648fbfa2fc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PositionAxis_21aeecbf-afb4-490b-82b5-d2a372b12b37" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PositionAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeTable_ce08195e-9b2d-44fb-89c7-40648fbfa2fc" xlink:to="loc_us-gaap_PositionAxis_21aeecbf-afb4-490b-82b5-d2a372b12b37" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PositionDomain_54e91fb7-ed11-458d-a994-e0b0a5594bdd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PositionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PositionAxis_21aeecbf-afb4-490b-82b5-d2a372b12b37" xlink:to="loc_us-gaap_PositionDomain_54e91fb7-ed11-458d-a994-e0b0a5594bdd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongMember_4bb05bfb-00ef-4ffa-94cd-6211da5579bd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PositionDomain_54e91fb7-ed11-458d-a994-e0b0a5594bdd" xlink:to="loc_us-gaap_LongMember_4bb05bfb-00ef-4ffa-94cd-6211da5579bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortMember_db1b83a9-8949-4e37-ac4e-9e1fc51274d0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShortMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PositionDomain_54e91fb7-ed11-458d-a994-e0b0a5594bdd" xlink:to="loc_us-gaap_ShortMember_db1b83a9-8949-4e37-ac4e-9e1fc51274d0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CurrencyAxis_4e4c875b-ce85-4e44-b248-1da80bc172f2" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_CurrencyAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeTable_ce08195e-9b2d-44fb-89c7-40648fbfa2fc" xlink:to="loc_srt_CurrencyAxis_4e4c875b-ce85-4e44-b248-1da80bc172f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_AllCurrenciesDomain_856658e5-5038-47e0-80e4-7b3394adfecd" xlink:href="https://xbrl.sec.gov/currency/2020/currency-2020-01-31.xsd#currency_AllCurrenciesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CurrencyAxis_4e4c875b-ce85-4e44-b248-1da80bc172f2" xlink:to="loc_currency_AllCurrenciesDomain_856658e5-5038-47e0-80e4-7b3394adfecd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_EUR_420644cf-aaae-447e-ab38-808f30920fae" xlink:href="https://xbrl.sec.gov/currency/2020/currency-2020-01-31.xsd#currency_EUR"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_856658e5-5038-47e0-80e4-7b3394adfecd" xlink:to="loc_currency_EUR_420644cf-aaae-447e-ab38-808f30920fae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_JPY_5d4c8915-6259-40b8-90d7-9aea3c12b420" xlink:href="https://xbrl.sec.gov/currency/2020/currency-2020-01-31.xsd#currency_JPY"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_856658e5-5038-47e0-80e4-7b3394adfecd" xlink:to="loc_currency_JPY_5d4c8915-6259-40b8-90d7-9aea3c12b420" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_KRW_e2d53c87-b165-4972-be5f-a5edef7d3792" xlink:href="https://xbrl.sec.gov/currency/2020/currency-2020-01-31.xsd#currency_KRW"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_856658e5-5038-47e0-80e4-7b3394adfecd" xlink:to="loc_currency_KRW_e2d53c87-b165-4972-be5f-a5edef7d3792" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_TWD_327fba45-21b3-4c92-b014-c7eb2f8ba491" xlink:href="https://xbrl.sec.gov/currency/2020/currency-2020-01-31.xsd#currency_TWD"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_856658e5-5038-47e0-80e4-7b3394adfecd" xlink:to="loc_currency_TWD_327fba45-21b3-4c92-b014-c7eb2f8ba491" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_ea51c8b4-c943-44b3-b1af-9d4e121acfa5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeTable_ce08195e-9b2d-44fb-89c7-40648fbfa2fc" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_ea51c8b4-c943-44b3-b1af-9d4e121acfa5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_b2ec668b-9553-42a6-a2c4-06335d850512" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_ea51c8b4-c943-44b3-b1af-9d4e121acfa5" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_b2ec668b-9553-42a6-a2c4-06335d850512" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignExchangeForwardMember_b5c4b067-4882-4b63-9b73-748d5806a5b4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ForeignExchangeForwardMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_b2ec668b-9553-42a6-a2c4-06335d850512" xlink:to="loc_us-gaap_ForeignExchangeForwardMember_b5c4b067-4882-4b63-9b73-748d5806a5b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLineItems_b83d746e-b041-455b-bf17-c4f34f2130ea" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeTable_ce08195e-9b2d-44fb-89c7-40648fbfa2fc" xlink:to="loc_us-gaap_DerivativeLineItems_b83d746e-b041-455b-bf17-c4f34f2130ea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeNotionalAmount_6e1d881b-9798-48ba-8d54-aee62c0ac6da" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeNotionalAmount"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeLineItems_b83d746e-b041-455b-bf17-c4f34f2130ea" xlink:to="loc_us-gaap_DerivativeNotionalAmount_6e1d881b-9798-48ba-8d54-aee62c0ac6da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_a218adf5-d81f-473a-87d2-af7b251232d7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_c9199a7f-b868-449e-9253-efbe8355ff85" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_a218adf5-d81f-473a-87d2-af7b251232d7" xlink:to="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_c9199a7f-b868-449e-9253-efbe8355ff85" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_87ec1b4f-0fe1-47ce-98a0-9e348feffb1f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_c9199a7f-b868-449e-9253-efbe8355ff85" xlink:to="loc_us-gaap_HedgingDesignationAxis_87ec1b4f-0fe1-47ce-98a0-9e348feffb1f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_102af52e-00b8-4709-96ca-0d863b327f64" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationAxis_87ec1b4f-0fe1-47ce-98a0-9e348feffb1f" xlink:to="loc_us-gaap_HedgingDesignationDomain_102af52e-00b8-4709-96ca-0d863b327f64" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NondesignatedMember_1406fc72-3747-4cc2-93da-30abcef05b3f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NondesignatedMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationDomain_102af52e-00b8-4709-96ca-0d863b327f64" xlink:to="loc_us-gaap_NondesignatedMember_1406fc72-3747-4cc2-93da-30abcef05b3f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_b85d21b7-579a-4911-a034-1922bd982894" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_c9199a7f-b868-449e-9253-efbe8355ff85" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_b85d21b7-579a-4911-a034-1922bd982894" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_8301e5e1-4bc4-4809-8e96-f756be22c921" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_b85d21b7-579a-4911-a034-1922bd982894" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_8301e5e1-4bc4-4809-8e96-f756be22c921" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignExchangeForwardMember_14cfb0d0-2e99-4ce0-ac6d-ecb1d364d370" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ForeignExchangeForwardMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_8301e5e1-4bc4-4809-8e96-f756be22c921" xlink:to="loc_us-gaap_ForeignExchangeForwardMember_14cfb0d0-2e99-4ce0-ac6d-ecb1d364d370" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_74790f06-188f-476f-aae4-03f5f6e1bf0c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_c9199a7f-b868-449e-9253-efbe8355ff85" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_74790f06-188f-476f-aae4-03f5f6e1bf0c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_7c024a13-0f7f-40e3-8a73-ddf8ae6d8b51" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_74790f06-188f-476f-aae4-03f5f6e1bf0c" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_7c024a13-0f7f-40e3-8a73-ddf8ae6d8b51" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpenseMember_676298af-49ed-45da-b024-60ef530887d3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpenseMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_7c024a13-0f7f-40e3-8a73-ddf8ae6d8b51" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpenseMember_676298af-49ed-45da-b024-60ef530887d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativesFairValueLineItems_dc3f220b-85cf-4cdb-a7dc-0efa5723f9af" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativesFairValueLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_c9199a7f-b868-449e-9253-efbe8355ff85" xlink:to="loc_us-gaap_DerivativesFairValueLineItems_dc3f220b-85cf-4cdb-a7dc-0efa5723f9af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeGainLossOnDerivativeNet_ddff4a5b-7eba-4903-a9f4-275a066ca538" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeGainLossOnDerivativeNet"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativesFairValueLineItems_dc3f220b-85cf-4cdb-a7dc-0efa5723f9af" xlink:to="loc_us-gaap_DerivativeGainLossOnDerivativeNet_ddff4a5b-7eba-4903-a9f4-275a066ca538" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_05f1f4c8-6645-433e-b1a2-3e06a20d5431" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_9663356c-5382-4683-bd1c-7315b2a42011" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_05f1f4c8-6645-433e-b1a2-3e06a20d5431" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_9663356c-5382-4683-bd1c-7315b2a42011" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_18c08e45-0d61-49c1-94a4-5aa2e4bb2337" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_9663356c-5382-4683-bd1c-7315b2a42011" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_18c08e45-0d61-49c1-94a4-5aa2e4bb2337" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_03fd033f-44bc-410e-a626-45e7ccacc2ba" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_18c08e45-0d61-49c1-94a4-5aa2e4bb2337" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_03fd033f-44bc-410e-a626-45e7ccacc2ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignExchangeForwardMember_7268b1ca-850e-4329-927b-eb6274aaee3b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ForeignExchangeForwardMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_03fd033f-44bc-410e-a626-45e7ccacc2ba" xlink:to="loc_us-gaap_ForeignExchangeForwardMember_7268b1ca-850e-4329-927b-eb6274aaee3b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_78284459-098e-4b92-aadf-8d0fec057cf5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_9663356c-5382-4683-bd1c-7315b2a42011" xlink:to="loc_us-gaap_HedgingDesignationAxis_78284459-098e-4b92-aadf-8d0fec057cf5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_1cdd0f63-405d-41a3-a081-bfd31f5f8164" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationAxis_78284459-098e-4b92-aadf-8d0fec057cf5" xlink:to="loc_us-gaap_HedgingDesignationDomain_1cdd0f63-405d-41a3-a081-bfd31f5f8164" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_824cbe82-781d-475c-9d04-3c4484629c19" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DesignatedAsHedgingInstrumentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationDomain_1cdd0f63-405d-41a3-a081-bfd31f5f8164" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_824cbe82-781d-475c-9d04-3c4484629c19" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_da429107-63d2-4426-84ee-c34f9c15a2fe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_9663356c-5382-4683-bd1c-7315b2a42011" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_da429107-63d2-4426-84ee-c34f9c15a2fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_f736d3ca-413c-421d-a4d6-775c61173b61" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_da429107-63d2-4426-84ee-c34f9c15a2fe" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_f736d3ca-413c-421d-a4d6-775c61173b61" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_b83b9bb3-9aba-4eca-bfd4-ffab8b943a6e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfSalesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_f736d3ca-413c-421d-a4d6-775c61173b61" xlink:to="loc_us-gaap_CostOfSalesMember_b83b9bb3-9aba-4eca-bfd4-ffab8b943a6e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_f4dcd79e-2c0d-4bb2-9185-ea5eac6e625c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_f736d3ca-413c-421d-a4d6-775c61173b61" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_f4dcd79e-2c0d-4bb2-9185-ea5eac6e625c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_759fa678-38b3-4599-8ad6-8a681eef8244" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_f736d3ca-413c-421d-a4d6-775c61173b61" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_759fa678-38b3-4599-8ad6-8a681eef8244" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_7326219b-7855-45e2-b66d-996cc898a3f8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_9663356c-5382-4683-bd1c-7315b2a42011" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_7326219b-7855-45e2-b66d-996cc898a3f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax_0bcce656-26a1-4610-95ca-1ed10fe35878" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_7326219b-7855-45e2-b66d-996cc898a3f8" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax_0bcce656-26a1-4610-95ca-1ed10fe35878" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax_ce3e5514-19c8-4543-80f1-66de2afa99d4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_7326219b-7855-45e2-b66d-996cc898a3f8" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax_ce3e5514-19c8-4543-80f1-66de2afa99d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails" xlink:type="simple" xlink:href="form-20210327.xsd#FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_6cfe658f-8b14-431c-8060-6da0992b3a24" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_cb63dc59-a1d5-4708-ad26-2c104f2525c3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_6cfe658f-8b14-431c-8060-6da0992b3a24" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_cb63dc59-a1d5-4708-ad26-2c104f2525c3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis_577a1bc4-a0ed-4dee-8f94-958af16c3065" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByMeasurementFrequencyAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_cb63dc59-a1d5-4708-ad26-2c104f2525c3" xlink:to="loc_us-gaap_FairValueByMeasurementFrequencyAxis_577a1bc4-a0ed-4dee-8f94-958af16c3065" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_ead4dfbd-729d-49ba-92b7-64d613bf1df9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_577a1bc4-a0ed-4dee-8f94-958af16c3065" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_ead4dfbd-729d-49ba-92b7-64d613bf1df9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsNonrecurringMember_b6e3026d-f0af-4eb5-b2be-c2041f888fc2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementsNonrecurringMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementFrequencyDomain_ead4dfbd-729d-49ba-92b7-64d613bf1df9" xlink:to="loc_us-gaap_FairValueMeasurementsNonrecurringMember_b6e3026d-f0af-4eb5-b2be-c2041f888fc2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_4094af92-f67b-4b78-9852-33c1abf8511e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_cb63dc59-a1d5-4708-ad26-2c104f2525c3" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_4094af92-f67b-4b78-9852-33c1abf8511e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsFairValueDisclosure_3baa8915-11b3-4a13-b095-4ce417be287c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsFairValueDisclosure"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_4094af92-f67b-4b78-9852-33c1abf8511e" xlink:to="loc_us-gaap_AssetsFairValueDisclosure_3baa8915-11b3-4a13-b095-4ce417be287c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosure_0cba9894-710f-419b-8c10-35fe25e7dbac" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesFairValueDisclosure"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_4094af92-f67b-4b78-9852-33c1abf8511e" xlink:to="loc_us-gaap_LiabilitiesFairValueDisclosure_0cba9894-710f-419b-8c10-35fe25e7dbac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/Warranty" xlink:type="simple" xlink:href="form-20210327.xsd#Warranty"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/Warranty" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_76014f5f-e5fe-462e-bc32-aba809deb17e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantiesDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyDisclosureTextBlock_626b1e6e-a2a2-4845-a188-5521993fcfb7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_76014f5f-e5fe-462e-bc32-aba809deb17e" xlink:to="loc_us-gaap_ProductWarrantyDisclosureTextBlock_626b1e6e-a2a2-4845-a188-5521993fcfb7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/WarrantyTables" xlink:type="simple" xlink:href="form-20210327.xsd#WarrantyTables"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/WarrantyTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_3ee25516-c026-42f6-ab16-3cadb38d642e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantiesDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_b65493fc-45bd-4899-825c-8d9f31b2a6db" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_3ee25516-c026-42f6-ab16-3cadb38d642e" xlink:to="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_b65493fc-45bd-4899-825c-8d9f31b2a6db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/WarrantyDetails" xlink:type="simple" xlink:href="form-20210327.xsd#WarrantyDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/WarrantyDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_006d39cf-ffb5-48ca-8c25-5ededbeaeeb7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantiesDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_0becdc5f-a429-470d-89e1-2a01e193c3f1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_006d39cf-ffb5-48ca-8c25-5ededbeaeeb7" xlink:to="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_0becdc5f-a429-470d-89e1-2a01e193c3f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrual_4daaab63-421b-4871-9018-04b5e795177b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyAccrual"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_0becdc5f-a429-470d-89e1-2a01e193c3f1" xlink:to="loc_us-gaap_ProductWarrantyAccrual_4daaab63-421b-4871-9018-04b5e795177b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued_b6b65fa1-0ae2-4e1b-bdac-a96fd0562988" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyAccrualWarrantiesIssued"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_0becdc5f-a429-470d-89e1-2a01e193c3f1" xlink:to="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued_b6b65fa1-0ae2-4e1b-bdac-a96fd0562988" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualPayments_92bbdee5-e438-4ef9-8d2f-57c04b3f82ab" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyAccrualPayments"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_0becdc5f-a429-470d-89e1-2a01e193c3f1" xlink:to="loc_us-gaap_ProductWarrantyAccrualPayments_92bbdee5-e438-4ef9-8d2f-57c04b3f82ab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrual_b95573fe-f507-4f80-b7ec-6e13053215b7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyAccrual"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_0becdc5f-a429-470d-89e1-2a01e193c3f1" xlink:to="loc_us-gaap_ProductWarrantyAccrual_b95573fe-f507-4f80-b7ec-6e13053215b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/PropertyPlantandEquipmentnet" xlink:type="simple" xlink:href="form-20210327.xsd#PropertyPlantandEquipmentnet"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/PropertyPlantandEquipmentnet" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_df6a6a07-19e0-4d13-a5fc-16bb515c7b81" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_67d17b3c-e4aa-4d60-9fc4-e8dc1d35aa1b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_df6a6a07-19e0-4d13-a5fc-16bb515c7b81" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_67d17b3c-e4aa-4d60-9fc4-e8dc1d35aa1b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/PropertyPlantandEquipmentnetTables" xlink:type="simple" xlink:href="form-20210327.xsd#PropertyPlantandEquipmentnetTables"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/PropertyPlantandEquipmentnetTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_fdf9a1eb-89ba-40a3-9005-9a0df4376d67" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_f47927bb-9ae4-48ca-9d84-20d76b4682b9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_fdf9a1eb-89ba-40a3-9005-9a0df4376d67" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_f47927bb-9ae4-48ca-9d84-20d76b4682b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails" xlink:type="simple" xlink:href="form-20210327.xsd#PropertyPlantandEquipmentnetDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_8615049e-380d-45ac-ae62-c5aabce5b8d8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2a3e58e9-f318-4bc9-9b30-218748c41bbe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_8615049e-380d-45ac-ae62-c5aabce5b8d8" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2a3e58e9-f318-4bc9-9b30-218748c41bbe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_62127dd0-0593-4801-acb0-a2abc1e549a2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2a3e58e9-f318-4bc9-9b30-218748c41bbe" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_62127dd0-0593-4801-acb0-a2abc1e549a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_7509f6eb-75a6-4057-b6ef-ecc20c0ac11c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_62127dd0-0593-4801-acb0-a2abc1e549a2" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_7509f6eb-75a6-4057-b6ef-ecc20c0ac11c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandMember_b1f76135-4f3a-415c-985a-1832baf17324" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LandMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_7509f6eb-75a6-4057-b6ef-ecc20c0ac11c" xlink:to="loc_us-gaap_LandMember_b1f76135-4f3a-415c-985a-1832baf17324" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquipmentMember_b73ea93a-cbad-412b-a4a7-4177d89a9e98" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquipmentMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_7509f6eb-75a6-4057-b6ef-ecc20c0ac11c" xlink:to="loc_us-gaap_EquipmentMember_b73ea93a-cbad-412b-a4a7-4177d89a9e98" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComputerEquipmentMember_66d2f865-e34d-4048-b8d2-52ecc513b937" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ComputerEquipmentMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_7509f6eb-75a6-4057-b6ef-ecc20c0ac11c" xlink:to="loc_us-gaap_ComputerEquipmentMember_66d2f865-e34d-4048-b8d2-52ecc513b937" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_92793e18-5d22-4460-9e92-025184220604" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_7509f6eb-75a6-4057-b6ef-ecc20c0ac11c" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_92793e18-5d22-4460-9e92-025184220604" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseholdImprovementsMember_ed7d58f8-b7ad-40ef-a998-924d1bce6942" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseholdImprovementsMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_7509f6eb-75a6-4057-b6ef-ecc20c0ac11c" xlink:to="loc_us-gaap_LeaseholdImprovementsMember_ed7d58f8-b7ad-40ef-a998-924d1bce6942" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3e86171e-ddf6-445c-b297-fd3dd5d16e33" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2a3e58e9-f318-4bc9-9b30-218748c41bbe" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3e86171e-ddf6-445c-b297-fd3dd5d16e33" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_5d2fe198-d4cc-43ee-b934-4256489c96d5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3e86171e-ddf6-445c-b297-fd3dd5d16e33" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_5d2fe198-d4cc-43ee-b934-4256489c96d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_8e4189ff-4dd5-4b85-a24a-b77cfaf2fa33" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3e86171e-ddf6-445c-b297-fd3dd5d16e33" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_8e4189ff-4dd5-4b85-a24a-b77cfaf2fa33" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress_a2da2da5-fee0-4bcc-80bf-d68f41ca4a34" xlink:href="form-20210327.xsd#form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3e86171e-ddf6-445c-b297-fd3dd5d16e33" xlink:to="loc_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress_a2da2da5-fee0-4bcc-80bf-d68f41ca4a34" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConstructionInProgressGross_744e81b0-0237-48d5-a12d-7a247664f0c5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConstructionInProgressGross"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3e86171e-ddf6-445c-b297-fd3dd5d16e33" xlink:to="loc_us-gaap_ConstructionInProgressGross_744e81b0-0237-48d5-a12d-7a247664f0c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_46b230d7-06b1-4a93-898b-81109ede9456" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_3e86171e-ddf6-445c-b297-fd3dd5d16e33" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_46b230d7-06b1-4a93-898b-81109ede9456" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensation" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensation"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensation" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_801e0d32-e690-4a79-8a60-16677a3b3845" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5c2c5f70-8566-4fbe-bdd7-fecd6f121b3b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_801e0d32-e690-4a79-8a60-16677a3b3845" xlink:to="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5c2c5f70-8566-4fbe-bdd7-fecd6f121b3b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationTables" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationTables"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_f7f3c959-de24-432b-8d9a-f32f67f3bca2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_f2ec4f7a-75c0-42ac-9d46-f18cd18096e7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_f7f3c959-de24-432b-8d9a-f32f67f3bca2" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_f2ec4f7a-75c0-42ac-9d46-f18cd18096e7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_84f265a7-04c6-4411-9c75-f80bb2680739" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_f7f3c959-de24-432b-8d9a-f32f67f3bca2" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_84f265a7-04c6-4411-9c75-f80bb2680739" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock_4addd6e2-9957-40ab-9e47-4e673a1c7491" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_f7f3c959-de24-432b-8d9a-f32f67f3bca2" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock_4addd6e2-9957-40ab-9e47-4e673a1c7491" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_2478b7a9-b16e-4116-8be8-aa9c8678f63d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_f7f3c959-de24-432b-8d9a-f32f67f3bca2" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_2478b7a9-b16e-4116-8be8-aa9c8678f63d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock_16629d55-1e3c-44ca-8fa5-e0d7e67a8e1a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_f7f3c959-de24-432b-8d9a-f32f67f3bca2" xlink:to="loc_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock_16629d55-1e3c-44ca-8fa5-e0d7e67a8e1a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_873444d1-919f-4bb2-9319-0a9cb41f0780" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c4ae6a22-bcc9-442e-8d60-da3f54016bba" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_873444d1-919f-4bb2-9319-0a9cb41f0780" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c4ae6a22-bcc9-442e-8d60-da3f54016bba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_420d0c1f-831f-4d53-887f-20da854f8e91" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PlanNameAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c4ae6a22-bcc9-442e-8d60-da3f54016bba" xlink:to="loc_us-gaap_PlanNameAxis_420d0c1f-831f-4d53-887f-20da854f8e91" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_893e0fbc-24cf-4f7a-9d1c-fd795ccd8cd2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameAxis_420d0c1f-831f-4d53-887f-20da854f8e91" xlink:to="loc_us-gaap_PlanNameDomain_893e0fbc-24cf-4f7a-9d1c-fd795ccd8cd2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_EquityIncentivePlanMember_5fa888f5-bf67-4253-83b7-7d1e6bac2131" xlink:href="form-20210327.xsd#form_EquityIncentivePlanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_893e0fbc-24cf-4f7a-9d1c-fd795ccd8cd2" xlink:to="loc_form_EquityIncentivePlanMember_5fa888f5-bf67-4253-83b7-7d1e6bac2131" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_fc0c5dac-9c9b-4ac9-80a6-ef0c2f62bd95" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c4ae6a22-bcc9-442e-8d60-da3f54016bba" xlink:to="loc_us-gaap_AwardTypeAxis_fc0c5dac-9c9b-4ac9-80a6-ef0c2f62bd95" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2d60ad6d-6cb1-40a0-a229-2a319a426e13" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_fc0c5dac-9c9b-4ac9-80a6-ef0c2f62bd95" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2d60ad6d-6cb1-40a0-a229-2a319a426e13" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_PerformanceRestrictedStockUnitsMember_4e425ea7-167c-492c-805c-8d027c9c0dd7" xlink:href="form-20210327.xsd#form_PerformanceRestrictedStockUnitsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2d60ad6d-6cb1-40a0-a229-2a319a426e13" xlink:to="loc_form_PerformanceRestrictedStockUnitsMember_4e425ea7-167c-492c-805c-8d027c9c0dd7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementClassOfStockAxis_5c9b0a46-5742-4ab8-af86-6620a2018721" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementClassOfStockAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c4ae6a22-bcc9-442e-8d60-da3f54016bba" xlink:to="loc_us-gaap_StatementClassOfStockAxis_5c9b0a46-5742-4ab8-af86-6620a2018721" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_c1c2b976-8fea-4bc6-8515-827f5715d360" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementClassOfStockAxis_5c9b0a46-5742-4ab8-af86-6620a2018721" xlink:to="loc_us-gaap_ClassOfStockDomain_c1c2b976-8fea-4bc6-8515-827f5715d360" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_293a9a91-9de4-482f-bfb8-c85bc02e2a22" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockDomain_c1c2b976-8fea-4bc6-8515-827f5715d360" xlink:to="loc_us-gaap_CommonStockMember_293a9a91-9de4-482f-bfb8-c85bc02e2a22" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6d3e1482-e172-426d-b87b-58bbbfdef181" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c4ae6a22-bcc9-442e-8d60-da3f54016bba" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6d3e1482-e172-426d-b87b-58bbbfdef181" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_cb85ad54-04a8-4f86-bdb9-ec436e6f29cc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6d3e1482-e172-426d-b87b-58bbbfdef181" xlink:to="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_cb85ad54-04a8-4f86-bdb9-ec436e6f29cc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired_b10f6ff1-a592-465d-9a48-22ff05d7e016" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockSharesAcquired"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6d3e1482-e172-426d-b87b-58bbbfdef181" xlink:to="loc_us-gaap_TreasuryStockSharesAcquired_b10f6ff1-a592-465d-9a48-22ff05d7e016" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_55027edb-0a37-4a57-9626-bf59fbfd93b6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6d3e1482-e172-426d-b87b-58bbbfdef181" xlink:to="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_55027edb-0a37-4a57-9626-bf59fbfd93b6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_58919eb1-593a-4b7b-8e24-5695dc8de6af" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6d3e1482-e172-426d-b87b-58bbbfdef181" xlink:to="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_58919eb1-593a-4b7b-8e24-5695dc8de6af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_9c0d637d-a2d6-4ecc-9bc0-cc7574851254" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6d3e1482-e172-426d-b87b-58bbbfdef181" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_9c0d637d-a2d6-4ecc-9bc0-cc7574851254" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_01fc4349-0350-4050-a30c-303914b61ce7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a39c89-9cfd-480d-85cf-5543a38e33e6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_01fc4349-0350-4050-a30c-303914b61ce7" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a39c89-9cfd-480d-85cf-5543a38e33e6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_37371780-9f6f-4519-ae4c-3252839caddd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PlanNameAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a39c89-9cfd-480d-85cf-5543a38e33e6" xlink:to="loc_us-gaap_PlanNameAxis_37371780-9f6f-4519-ae4c-3252839caddd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_df1ac478-b7e4-4d8e-8160-186ee0810db9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameAxis_37371780-9f6f-4519-ae4c-3252839caddd" xlink:to="loc_us-gaap_PlanNameDomain_df1ac478-b7e4-4d8e-8160-186ee0810db9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_EquityIncentivePlanMember_3d857bfb-4467-4bd9-ae86-ebaba76333b5" xlink:href="form-20210327.xsd#form_EquityIncentivePlanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_df1ac478-b7e4-4d8e-8160-186ee0810db9" xlink:to="loc_form_EquityIncentivePlanMember_3d857bfb-4467-4bd9-ae86-ebaba76333b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_1278b968-1109-41bc-b4ef-664570063101" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a39c89-9cfd-480d-85cf-5543a38e33e6" xlink:to="loc_us-gaap_AwardTypeAxis_1278b968-1109-41bc-b4ef-664570063101" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_bbbde5fa-31b4-4d11-b52f-c9a829a2a4d4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_1278b968-1109-41bc-b4ef-664570063101" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_bbbde5fa-31b4-4d11-b52f-c9a829a2a4d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_df904d57-a0b8-45fe-a2cd-324b033836c6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_bbbde5fa-31b4-4d11-b52f-c9a829a2a4d4" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_df904d57-a0b8-45fe-a2cd-324b033836c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6ba9c92e-e281-4f3e-9b91-75f0905b43ef" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_35a39c89-9cfd-480d-85cf-5543a38e33e6" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6ba9c92e-e281-4f3e-9b91-75f0905b43ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_08441517-3ff2-4793-bccb-c9b32e42ad8a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6ba9c92e-e281-4f3e-9b91-75f0905b43ef" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_08441517-3ff2-4793-bccb-c9b32e42ad8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_fed9f286-1d1c-4e8a-a554-9d06a6aed1ac" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_08441517-3ff2-4793-bccb-c9b32e42ad8a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_fed9f286-1d1c-4e8a-a554-9d06a6aed1ac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_c004d080-cc42-41d6-a94f-9b6c632abe60" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_08441517-3ff2-4793-bccb-c9b32e42ad8a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_c004d080-cc42-41d6-a94f-9b6c632abe60" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_c4b6a89c-65de-4ee7-bc47-2bc0bb0599a7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_08441517-3ff2-4793-bccb-c9b32e42ad8a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_c4b6a89c-65de-4ee7-bc47-2bc0bb0599a7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_08a6800a-b595-4114-a613-775c947e8b84" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_08441517-3ff2-4793-bccb-c9b32e42ad8a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_08a6800a-b595-4114-a613-775c947e8b84" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_d2b318de-fb78-4c13-8e9e-b303f406eff1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_08441517-3ff2-4793-bccb-c9b32e42ad8a" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_d2b318de-fb78-4c13-8e9e-b303f406eff1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_48a1fef0-84a5-4105-ba64-cdb8a9f5561c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_6ba9c92e-e281-4f3e-9b91-75f0905b43ef" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_48a1fef0-84a5-4105-ba64-cdb8a9f5561c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_cf3eb291-216a-43a5-9be7-d8b4609e5cc1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_48a1fef0-84a5-4105-ba64-cdb8a9f5561c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_cf3eb291-216a-43a5-9be7-d8b4609e5cc1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_95d5eb48-e3bd-40b9-b514-1374f3aa868f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_48a1fef0-84a5-4105-ba64-cdb8a9f5561c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_95d5eb48-e3bd-40b9-b514-1374f3aa868f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_e11179ce-5929-4dc0-840b-4ec4dadd2317" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_48a1fef0-84a5-4105-ba64-cdb8a9f5561c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_e11179ce-5929-4dc0-840b-4ec4dadd2317" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_1a2ffe00-dc67-406a-8f83-c1e9bf26148a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_48a1fef0-84a5-4105-ba64-cdb8a9f5561c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_1a2ffe00-dc67-406a-8f83-c1e9bf26148a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_ee613996-f11a-498c-b6d4-aef8a34a1b9a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_48a1fef0-84a5-4105-ba64-cdb8a9f5561c" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_ee613996-f11a-498c-b6d4-aef8a34a1b9a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_2c315743-e143-4e0f-929d-6f0a9da82c4c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0c0fef00-97d4-4d06-93e5-a9100600c972" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_2c315743-e143-4e0f-929d-6f0a9da82c4c" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0c0fef00-97d4-4d06-93e5-a9100600c972" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_26830709-eddc-4b8c-9a9d-11ebe2b23127" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PlanNameAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0c0fef00-97d4-4d06-93e5-a9100600c972" xlink:to="loc_us-gaap_PlanNameAxis_26830709-eddc-4b8c-9a9d-11ebe2b23127" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_0ccac15b-7fc2-4889-a5a1-7d62bdcbcdf5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameAxis_26830709-eddc-4b8c-9a9d-11ebe2b23127" xlink:to="loc_us-gaap_PlanNameDomain_0ccac15b-7fc2-4889-a5a1-7d62bdcbcdf5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_EquityIncentivePlanMember_6b48fe84-3ee7-4adc-83be-2668fbfd8f6a" xlink:href="form-20210327.xsd#form_EquityIncentivePlanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_0ccac15b-7fc2-4889-a5a1-7d62bdcbcdf5" xlink:to="loc_form_EquityIncentivePlanMember_6b48fe84-3ee7-4adc-83be-2668fbfd8f6a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_31070053-6889-4c67-b714-70e5fd2cf6d8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0c0fef00-97d4-4d06-93e5-a9100600c972" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_31070053-6889-4c67-b714-70e5fd2cf6d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_a8e59f53-7e23-4a61-8851-fae1e45a8b90" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_31070053-6889-4c67-b714-70e5fd2cf6d8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_a8e59f53-7e23-4a61-8851-fae1e45a8b90" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_92285a24-a0ae-435b-bbaa-2fe1b9338811" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_a8e59f53-7e23-4a61-8851-fae1e45a8b90" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_92285a24-a0ae-435b-bbaa-2fe1b9338811" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_ea6fb7fd-4727-4c8e-90bf-4ecaef679167" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_a8e59f53-7e23-4a61-8851-fae1e45a8b90" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_ea6fb7fd-4727-4c8e-90bf-4ecaef679167" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_4ebbad3f-5a3b-4228-8ba3-f8b6ef67388a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_a8e59f53-7e23-4a61-8851-fae1e45a8b90" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_4ebbad3f-5a3b-4228-8ba3-f8b6ef67388a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber_cca54e77-fa70-4bb5-a9be-00e388420b70" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_31070053-6889-4c67-b714-70e5fd2cf6d8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber_cca54e77-fa70-4bb5-a9be-00e388420b70" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_272bfbbf-ea8f-42bd-b865-686b39882c94" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_31070053-6889-4c67-b714-70e5fd2cf6d8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_272bfbbf-ea8f-42bd-b865-686b39882c94" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_bba1273b-9834-43da-87b9-3dbd06fd3bbd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_31070053-6889-4c67-b714-70e5fd2cf6d8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_bba1273b-9834-43da-87b9-3dbd06fd3bbd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_d3a8ff7a-0939-40e3-87bd-bf84640d9ed5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_bba1273b-9834-43da-87b9-3dbd06fd3bbd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_d3a8ff7a-0939-40e3-87bd-bf84640d9ed5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_a13058de-af5c-49ff-9ac1-4aaa8d206006" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_bba1273b-9834-43da-87b9-3dbd06fd3bbd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_a13058de-af5c-49ff-9ac1-4aaa8d206006" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_84cb3157-03e3-437b-80a0-debc677942ce" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_bba1273b-9834-43da-87b9-3dbd06fd3bbd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_84cb3157-03e3-437b-80a0-debc677942ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_1ffc07a4-f4b5-481e-aa92-3f63533522c8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_31070053-6889-4c67-b714-70e5fd2cf6d8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_1ffc07a4-f4b5-481e-aa92-3f63533522c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_7d77ee43-d60c-4548-a4b6-857a8c0d691f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_31070053-6889-4c67-b714-70e5fd2cf6d8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_7d77ee43-d60c-4548-a4b6-857a8c0d691f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_0d36d256-9678-4f22-922f-c51859f9c172" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_31070053-6889-4c67-b714-70e5fd2cf6d8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_0d36d256-9678-4f22-922f-c51859f9c172" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_6007ca5d-a23b-4897-b145-b068a15f1809" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_0d36d256-9678-4f22-922f-c51859f9c172" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_6007ca5d-a23b-4897-b145-b068a15f1809" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_057a5789-f763-4754-bf09-ae58c3060b4b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_0d36d256-9678-4f22-922f-c51859f9c172" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_057a5789-f763-4754-bf09-ae58c3060b4b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_4c942390-1f44-48b5-bac4-eea00b36779f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_0d36d256-9678-4f22-922f-c51859f9c172" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_4c942390-1f44-48b5-bac4-eea00b36779f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_af80afec-2dc7-48f2-b997-020a4a385a38" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_0d36d256-9678-4f22-922f-c51859f9c172" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_af80afec-2dc7-48f2-b997-020a4a385a38" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_2bd8038d-cb6b-40bc-83e0-d73290152e80" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_0d36d256-9678-4f22-922f-c51859f9c172" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_2bd8038d-cb6b-40bc-83e0-d73290152e80" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_5de3696c-49fa-442c-8ccf-3a107269e971" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_0d36d256-9678-4f22-922f-c51859f9c172" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_5de3696c-49fa-442c-8ccf-3a107269e971" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationESPPActivityDetails" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationESPPActivityDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationESPPActivityDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_f56a4e30-ed27-4fd4-8d64-4951cd0b2fc4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_923a0a2f-4ead-45d4-ad75-49b7c744b619" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_f56a4e30-ed27-4fd4-8d64-4951cd0b2fc4" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_923a0a2f-4ead-45d4-ad75-49b7c744b619" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_794b8bd5-41ee-4013-abf2-e53cd088a555" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_923a0a2f-4ead-45d4-ad75-49b7c744b619" xlink:to="loc_us-gaap_AwardTypeAxis_794b8bd5-41ee-4013-abf2-e53cd088a555" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8e3f5be9-396c-4ad9-bb56-c08d4815a5fb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_794b8bd5-41ee-4013-abf2-e53cd088a555" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8e3f5be9-396c-4ad9-bb56-c08d4815a5fb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockMember_b786fc44-70de-4442-baeb-cbe360d41546" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8e3f5be9-396c-4ad9-bb56-c08d4815a5fb" xlink:to="loc_us-gaap_EmployeeStockMember_b786fc44-70de-4442-baeb-cbe360d41546" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_9f002484-425f-4c81-8145-40b47501d706" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_923a0a2f-4ead-45d4-ad75-49b7c744b619" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_9f002484-425f-4c81-8145-40b47501d706" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_1f845fdd-48f4-44d1-b26f-63b1446c919d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_9f002484-425f-4c81-8145-40b47501d706" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_1f845fdd-48f4-44d1-b26f-63b1446c919d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_eaaa4e24-b598-4b4c-abfa-cded4ddcf4a3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_9f002484-425f-4c81-8145-40b47501d706" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_eaaa4e24-b598-4b4c-abfa-cded4ddcf4a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock_659736d7-5c4a-46b1-9026-5d09a9a11237" xlink:href="form-20210327.xsd#form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_9f002484-425f-4c81-8145-40b47501d706" xlink:to="loc_form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock_659736d7-5c4a-46b1-9026-5d09a9a11237" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_3bd4cd84-7b84-46b9-900f-5b11de46db78" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_ac3323f9-99ea-4602-9ef3-9f92180da781" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_3bd4cd84-7b84-46b9-900f-5b11de46db78" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_ac3323f9-99ea-4602-9ef3-9f92180da781" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_d484b9ab-eeac-434e-8807-6fd9f8fdbe8e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_ac3323f9-99ea-4602-9ef3-9f92180da781" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_d484b9ab-eeac-434e-8807-6fd9f8fdbe8e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_754a4521-1198-4efe-84c9-c85cd2fea4f5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_d484b9ab-eeac-434e-8807-6fd9f8fdbe8e" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_754a4521-1198-4efe-84c9-c85cd2fea4f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_d0e438da-cdfe-475b-b161-2da015fb21d1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfSalesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_754a4521-1198-4efe-84c9-c85cd2fea4f5" xlink:to="loc_us-gaap_CostOfSalesMember_d0e438da-cdfe-475b-b161-2da015fb21d1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_b68c187b-210f-468f-b5e9-76ab11c8eef2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_754a4521-1198-4efe-84c9-c85cd2fea4f5" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_b68c187b-210f-468f-b5e9-76ab11c8eef2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_70e9754a-32a3-40c1-b4b7-534ff2523da4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_754a4521-1198-4efe-84c9-c85cd2fea4f5" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_70e9754a-32a3-40c1-b4b7-534ff2523da4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_5b228cc4-d66f-4889-a5a3-e21d64f8edc9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_ac3323f9-99ea-4602-9ef3-9f92180da781" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_5b228cc4-d66f-4889-a5a3-e21d64f8edc9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_2ca50100-f82b-40d7-bb8a-736f2b04047a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_5b228cc4-d66f-4889-a5a3-e21d64f8edc9" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_2ca50100-f82b-40d7-bb8a-736f2b04047a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails" xlink:type="simple" xlink:href="form-20210327.xsd#StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_efd96ae0-f79b-41f0-9877-3be0afbf49d2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_55c657fd-fe89-4532-b022-3f070c9b2e7b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_efd96ae0-f79b-41f0-9877-3be0afbf49d2" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_55c657fd-fe89-4532-b022-3f070c9b2e7b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_97c80471-2653-4d60-aa4a-1d7cdce02226" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_55c657fd-fe89-4532-b022-3f070c9b2e7b" xlink:to="loc_us-gaap_AwardTypeAxis_97c80471-2653-4d60-aa4a-1d7cdce02226" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_26f1e407-79a3-422b-ab58-90cc49672e8f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_97c80471-2653-4d60-aa4a-1d7cdce02226" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_26f1e407-79a3-422b-ab58-90cc49672e8f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember_530357ce-486a-48d2-9046-9b7210fb42dd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_26f1e407-79a3-422b-ab58-90cc49672e8f" xlink:to="loc_us-gaap_RestrictedStockMember_530357ce-486a-48d2-9046-9b7210fb42dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_PerformanceRestrictedStockUnitsMember_9916fdaf-fed7-464b-9d14-5807f0a22812" xlink:href="form-20210327.xsd#form_PerformanceRestrictedStockUnitsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_26f1e407-79a3-422b-ab58-90cc49672e8f" xlink:to="loc_form_PerformanceRestrictedStockUnitsMember_9916fdaf-fed7-464b-9d14-5807f0a22812" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockMember_56e052db-6eaf-47d1-ab0a-8726f3bfe890" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeStockMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_26f1e407-79a3-422b-ab58-90cc49672e8f" xlink:to="loc_us-gaap_EmployeeStockMember_56e052db-6eaf-47d1-ab0a-8726f3bfe890" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_ee0dda4d-de1f-4cb3-92c1-1a7981925ef0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_55c657fd-fe89-4532-b022-3f070c9b2e7b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_ee0dda4d-de1f-4cb3-92c1-1a7981925ef0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_8ae6a5ea-d234-4677-a03d-54f514c58bff" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_ee0dda4d-de1f-4cb3-92c1-1a7981925ef0" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_8ae6a5ea-d234-4677-a03d-54f514c58bff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_a322728d-01e3-4d7f-b88a-64cd7a59ead6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_ee0dda4d-de1f-4cb3-92c1-1a7981925ef0" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_a322728d-01e3-4d7f-b88a-64cd7a59ead6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/NetIncomeperShare" xlink:type="simple" xlink:href="form-20210327.xsd#NetIncomeperShare"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/NetIncomeperShare" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_651ad557-708d-4da9-8d58-c885ce90a6cd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareTextBlock_a7b94e4a-dcd9-48a5-bd4f-3e1b50e1d5b0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_651ad557-708d-4da9-8d58-c885ce90a6cd" xlink:to="loc_us-gaap_EarningsPerShareTextBlock_a7b94e4a-dcd9-48a5-bd4f-3e1b50e1d5b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/NetIncomeperShareTables" xlink:type="simple" xlink:href="form-20210327.xsd#NetIncomeperShareTables"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/NetIncomeperShareTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_3de2c237-219f-4820-ae97-48cece7aa70f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_2dded804-c9d2-490a-a965-98406319dd4d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_3de2c237-219f-4820-ae97-48cece7aa70f" xlink:to="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_2dded804-c9d2-490a-a965-98406319dd4d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/NetIncomeperShareDetails" xlink:type="simple" xlink:href="form-20210327.xsd#NetIncomeperShareDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/NetIncomeperShareDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_8fb16c0c-ed50-4ef4-bea6-df71b96725ac" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_01208533-1aaa-4f84-bc70-56fdcaa77773" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_8fb16c0c-ed50-4ef4-bea6-df71b96725ac" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_01208533-1aaa-4f84-bc70-56fdcaa77773" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_2b4285bf-66ec-442b-b672-f23de9ddd4d1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_8fb16c0c-ed50-4ef4-bea6-df71b96725ac" xlink:to="loc_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_2b4285bf-66ec-442b-b672-f23de9ddd4d1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_c5be86ff-5a88-45d7-8b2d-b9cc677e4d50" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_8fb16c0c-ed50-4ef4-bea6-df71b96725ac" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_c5be86ff-5a88-45d7-8b2d-b9cc677e4d50" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_4c03dc15-9f30-4c68-a15d-8d4634313b73" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_8fb16c0c-ed50-4ef4-bea6-df71b96725ac" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_4c03dc15-9f30-4c68-a15d-8d4634313b73" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/CommitmentsandContingencies" xlink:type="simple" xlink:href="form-20210327.xsd#CommitmentsandContingencies"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/CommitmentsandContingencies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_6fb4a5ba-859e-4e92-b444-daccc6de069a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_40c5aeac-eeac-42cf-b252-04efc710d67c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_6fb4a5ba-859e-4e92-b444-daccc6de069a" xlink:to="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_40c5aeac-eeac-42cf-b252-04efc710d67c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/Leases" xlink:type="simple" xlink:href="form-20210327.xsd#Leases"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/Leases" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_42d83509-3ef0-49c6-9523-ab21cdf3bc03" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock_9418278d-4ff0-40bc-8b3f-d869793e56cd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeasesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_42d83509-3ef0-49c6-9523-ab21cdf3bc03" xlink:to="loc_us-gaap_LesseeOperatingLeasesTextBlock_9418278d-4ff0-40bc-8b3f-d869793e56cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/LeasesTables" xlink:type="simple" xlink:href="form-20210327.xsd#LeasesTables"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/LeasesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_1d366297-39c8-40c0-b93e-03972a1db66b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCostTableTextBlock_342535ff-a2f6-4e0c-919c-dcd0171c5340" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseCostTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_1d366297-39c8-40c0-b93e-03972a1db66b" xlink:to="loc_us-gaap_LeaseCostTableTextBlock_342535ff-a2f6-4e0c-919c-dcd0171c5340" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_dc56349b-fc9d-47c4-8fe0-563b4c13a658" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_1d366297-39c8-40c0-b93e-03972a1db66b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_dc56349b-fc9d-47c4-8fe0-563b4c13a658" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/LeasesNarrativeDetails" xlink:type="simple" xlink:href="form-20210327.xsd#LeasesNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/LeasesNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_52463558-933b-41f8-9de9-801314b7b914" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionTable_99ae3444-5057-462c-9d8d-b3054044b561" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeLeaseDescriptionTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_52463558-933b-41f8-9de9-801314b7b914" xlink:to="loc_us-gaap_LesseeLeaseDescriptionTable_99ae3444-5057-462c-9d8d-b3054044b561" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_19b1a8cb-a5bd-49ec-b614-68aeeadf7879" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_99ae3444-5057-462c-9d8d-b3054044b561" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_19b1a8cb-a5bd-49ec-b614-68aeeadf7879" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_695fe421-8eb3-4cc8-a48f-0a10ea000307" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_19b1a8cb-a5bd-49ec-b614-68aeeadf7879" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_695fe421-8eb3-4cc8-a48f-0a10ea000307" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AutomobilesMember_d61ff8c8-3a98-49c6-8671-f5ba410ae326" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AutomobilesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_695fe421-8eb3-4cc8-a48f-0a10ea000307" xlink:to="loc_us-gaap_AutomobilesMember_d61ff8c8-3a98-49c6-8671-f5ba410ae326" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_6b01bee1-7b17-41bd-ae9d-7a455489ba2c" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_99ae3444-5057-462c-9d8d-b3054044b561" xlink:to="loc_srt_RangeAxis_6b01bee1-7b17-41bd-ae9d-7a455489ba2c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_bcb009ec-7a90-4449-ab68-366d0ddf57b5" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_6b01bee1-7b17-41bd-ae9d-7a455489ba2c" xlink:to="loc_srt_RangeMember_bcb009ec-7a90-4449-ab68-366d0ddf57b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_ecf1ad12-16da-40e3-9a77-594509915e58" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_bcb009ec-7a90-4449-ab68-366d0ddf57b5" xlink:to="loc_srt_MinimumMember_ecf1ad12-16da-40e3-9a77-594509915e58" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_0792e582-55ba-44df-9eaa-e237eefb90dd" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_bcb009ec-7a90-4449-ab68-366d0ddf57b5" xlink:to="loc_srt_MaximumMember_0792e582-55ba-44df-9eaa-e237eefb90dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionLineItems_72c9abbc-f8b1-4daa-b064-3542be140ef7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeLeaseDescriptionLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_99ae3444-5057-462c-9d8d-b3054044b561" xlink:to="loc_us-gaap_LesseeLeaseDescriptionLineItems_72c9abbc-f8b1-4daa-b064-3542be140ef7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseTermOfContract_90c89675-d4aa-4bc7-ae96-46177810bf38" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseTermOfContract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_72c9abbc-f8b1-4daa-b064-3542be140ef7" xlink:to="loc_us-gaap_LesseeOperatingLeaseTermOfContract_90c89675-d4aa-4bc7-ae96-46177810bf38" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseRenewalTerm_b5cc3ee4-f2c1-473b-b311-8624226d4105" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_72c9abbc-f8b1-4daa-b064-3542be140ef7" xlink:to="loc_us-gaap_LesseeOperatingLeaseRenewalTerm_b5cc3ee4-f2c1-473b-b311-8624226d4105" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_b5743cfe-abfe-4da4-a252-69084d528a83" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_72c9abbc-f8b1-4daa-b064-3542be140ef7" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_b5743cfe-abfe-4da4-a252-69084d528a83" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_e4815705-ac41-4ec0-a9b3-fd7c5ec2610f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_72c9abbc-f8b1-4daa-b064-3542be140ef7" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_e4815705-ac41-4ec0-a9b3-fd7c5ec2610f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/LeasesComponentsofLeaseExpenseDetails" xlink:type="simple" xlink:href="form-20210327.xsd#LeasesComponentsofLeaseExpenseDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/LeasesComponentsofLeaseExpenseDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_6ef6bc7c-6e79-4327-9612-96889deacf25" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseExpense_e8204ac3-0f09-4c84-8e8a-0aa9207141cb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_6ef6bc7c-6e79-4327-9612-96889deacf25" xlink:to="loc_us-gaap_OperatingLeaseExpense_e8204ac3-0f09-4c84-8e8a-0aa9207141cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermLeaseCost_42de5912-b73f-41fc-a6ad-648d2904044e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShortTermLeaseCost"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_6ef6bc7c-6e79-4327-9612-96889deacf25" xlink:to="loc_us-gaap_ShortTermLeaseCost_42de5912-b73f-41fc-a6ad-648d2904044e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableLeaseCost_68bbcff5-ec58-4898-9b7f-b3f1863b04f7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableLeaseCost"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_6ef6bc7c-6e79-4327-9612-96889deacf25" xlink:to="loc_us-gaap_VariableLeaseCost_68bbcff5-ec58-4898-9b7f-b3f1863b04f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_6df3c3a4-971f-41de-a3e2-7b354902a85b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseCost"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_6ef6bc7c-6e79-4327-9612-96889deacf25" xlink:to="loc_us-gaap_LeaseCost_6df3c3a4-971f-41de-a3e2-7b354902a85b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails" xlink:type="simple" xlink:href="form-20210327.xsd#LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_bbb0f631-265e-40ec-9bcd-8561d84a6bce" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_22fb5076-67fe-40fe-a3dd-93c55e006f05" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_bbb0f631-265e-40ec-9bcd-8561d84a6bce" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_22fb5076-67fe-40fe-a3dd-93c55e006f05" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_d6626053-2420-44de-87ee-59861f5f5cd1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_bbb0f631-265e-40ec-9bcd-8561d84a6bce" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_d6626053-2420-44de-87ee-59861f5f5cd1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_64b39f70-1eda-4534-bab7-fd2f2518d6b5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_bbb0f631-265e-40ec-9bcd-8561d84a6bce" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_64b39f70-1eda-4534-bab7-fd2f2518d6b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_dcf782fd-513a-4188-8250-34b5e7b2341d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_bbb0f631-265e-40ec-9bcd-8561d84a6bce" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_dcf782fd-513a-4188-8250-34b5e7b2341d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_562f4c0b-f823-49a6-8961-35871fcb1dc1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_bbb0f631-265e-40ec-9bcd-8561d84a6bce" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_562f4c0b-f823-49a6-8961-35871fcb1dc1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour_7e42b112-25a6-423b-aa59-a97bcecbe793" xlink:href="form-20210327.xsd#form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_bbb0f631-265e-40ec-9bcd-8561d84a6bce" xlink:to="loc_form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour_7e42b112-25a6-423b-aa59-a97bcecbe793" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_f973b96d-435b-43c2-9098-85eba40b8274" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_bbb0f631-265e-40ec-9bcd-8561d84a6bce" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_f973b96d-435b-43c2-9098-85eba40b8274" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_be51c41c-1a29-41c2-8d79-0ddbfee570b0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_bbb0f631-265e-40ec-9bcd-8561d84a6bce" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_be51c41c-1a29-41c2-8d79-0ddbfee570b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_871315a0-fa40-4fb9-a6c8-311ad7bc979c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_bbb0f631-265e-40ec-9bcd-8561d84a6bce" xlink:to="loc_us-gaap_OperatingLeaseLiability_871315a0-fa40-4fb9-a6c8-311ad7bc979c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_53832e49-7d36-4c5f-b471-a871173bdd07" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_bbb0f631-265e-40ec-9bcd-8561d84a6bce" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_53832e49-7d36-4c5f-b471-a871173bdd07" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_d99b5d0e-d334-4bb6-a96a-1994c1b5b9ee" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_bbb0f631-265e-40ec-9bcd-8561d84a6bce" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_d99b5d0e-d334-4bb6-a96a-1994c1b5b9ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails_1" xlink:type="simple" xlink:href="form-20210327.xsd#LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails_1"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails_1" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/Revenue" xlink:type="simple" xlink:href="form-20210327.xsd#Revenue"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/Revenue" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_f6d7c1e0-282b-4267-98ce-8e2c34f28f90" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_e2a594ab-d643-409e-87b3-a599e94699e8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_f6d7c1e0-282b-4267-98ce-8e2c34f28f90" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_e2a594ab-d643-409e-87b3-a599e94699e8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/RevenueAdditionalInformationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#RevenueAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/RevenueAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_c9dae1d3-37c2-44f8-9a96-babab6ddd360" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligation_cbaff1ba-bf3a-4a0a-beda-4bfda4b394f8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligation"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_c9dae1d3-37c2-44f8-9a96-babab6ddd360" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligation_cbaff1ba-bf3a-4a0a-beda-4bfda4b394f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetNet_4aaff467-c9af-4b8f-b32f-0b2e89bc8fd8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerAssetNet"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_c9dae1d3-37c2-44f8-9a96-babab6ddd360" xlink:to="loc_us-gaap_ContractWithCustomerAssetNet_4aaff467-c9af-4b8f-b32f-0b2e89bc8fd8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability_81ee25c0-05ef-4e6b-8430-023bf41fe682" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_c9dae1d3-37c2-44f8-9a96-babab6ddd360" xlink:to="loc_us-gaap_ContractWithCustomerLiability_81ee25c0-05ef-4e6b-8430-023bf41fe682" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_58eba12d-683f-44ba-b22c-46ce3d1b4ac5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_c9dae1d3-37c2-44f8-9a96-babab6ddd360" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_58eba12d-683f-44ba-b22c-46ce3d1b4ac5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#RevenueRemainingPerformanceObligationDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_4c19d953-8739-477e-9c92-7d974f1b5830" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_0880a65c-2039-42ba-b1ae-3386249fd269" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_4c19d953-8739-477e-9c92-7d974f1b5830" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_0880a65c-2039-42ba-b1ae-3386249fd269" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_f12b5510-b550-4dda-9057-c8046a630faf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_0880a65c-2039-42ba-b1ae-3386249fd269" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_f12b5510-b550-4dda-9057-c8046a630faf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_4205b9dc-390a-41a6-98cc-1c4adc322104" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_0880a65c-2039-42ba-b1ae-3386249fd269" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_4205b9dc-390a-41a6-98cc-1c4adc322104" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage_ce027c43-b3f9-4546-8cf4-92474b7a3e4a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationPercentage"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_4205b9dc-390a-41a6-98cc-1c4adc322104" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationPercentage_ce027c43-b3f9-4546-8cf4-92474b7a3e4a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_1ac36cb4-3819-487c-b46c-396c307e1a99" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_4205b9dc-390a-41a6-98cc-1c4adc322104" xlink:to="loc_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_1ac36cb4-3819-487c-b46c-396c307e1a99" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails_1" xlink:type="simple" xlink:href="form-20210327.xsd#RevenueRemainingPerformanceObligationDetails_1"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails_1" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformation" xlink:type="simple" xlink:href="form-20210327.xsd#OperatingSegmentsandEnterpriseWideInformation"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformation" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_b471743a-eff4-4c8b-90bc-2de5097c606a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock_3d13323c-4ff7-4f7a-ad86-d75570cddbba" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_b471743a-eff4-4c8b-90bc-2de5097c606a" xlink:to="loc_us-gaap_SegmentReportingDisclosureTextBlock_3d13323c-4ff7-4f7a-ad86-d75570cddbba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationTables" xlink:type="simple" xlink:href="form-20210327.xsd#OperatingSegmentsandEnterpriseWideInformationTables"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_f499f3aa-6d4f-4146-8f98-4002047d79b1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_0242f683-22dc-48b9-8771-0b2e8c4ecadd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_f499f3aa-6d4f-4146-8f98-4002047d79b1" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_0242f683-22dc-48b9-8771-0b2e8c4ecadd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_412d3888-2bd3-4367-b940-5343b406e192" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_f499f3aa-6d4f-4146-8f98-4002047d79b1" xlink:to="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_412d3888-2bd3-4367-b940-5343b406e192" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationAdditionalInformationDetails" xlink:type="simple" xlink:href="form-20210327.xsd#OperatingSegmentsandEnterpriseWideInformationAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_fd26096d-23d3-46ff-9f3f-7459b092b446" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments_d291f82a-d467-41c6-8da3-4d905fa54b4e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_fd26096d-23d3-46ff-9f3f-7459b092b446" xlink:to="loc_us-gaap_NumberOfReportableSegments_d291f82a-d467-41c6-8da3-4d905fa54b4e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails" xlink:type="simple" xlink:href="form-20210327.xsd#OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_96adcf81-fd0e-496f-84d1-cfc77b81971b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_907686b1-87c5-4137-8c3c-a8f1b7cef637" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_96adcf81-fd0e-496f-84d1-cfc77b81971b" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_907686b1-87c5-4137-8c3c-a8f1b7cef637" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_843fb823-bc68-4e7d-b389-962ab7b79eec" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_907686b1-87c5-4137-8c3c-a8f1b7cef637" xlink:to="loc_srt_ConsolidationItemsAxis_843fb823-bc68-4e7d-b389-962ab7b79eec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_f0ff40d5-129a-4de0-baf8-d8f17dbefebf" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ConsolidationItemsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_843fb823-bc68-4e7d-b389-962ab7b79eec" xlink:to="loc_srt_ConsolidationItemsDomain_f0ff40d5-129a-4de0-baf8-d8f17dbefebf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_e4cc4015-24df-4bca-b244-f7d5fc77caaa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_f0ff40d5-129a-4de0-baf8-d8f17dbefebf" xlink:to="loc_us-gaap_OperatingSegmentsMember_e4cc4015-24df-4bca-b244-f7d5fc77caaa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_290198cf-85db-4d5b-bf1a-ea4996ba0ccd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_907686b1-87c5-4137-8c3c-a8f1b7cef637" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_290198cf-85db-4d5b-bf1a-ea4996ba0ccd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_9bb90664-117b-4731-a769-bc10ad75a823" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_290198cf-85db-4d5b-bf1a-ea4996ba0ccd" xlink:to="loc_us-gaap_SegmentDomain_9bb90664-117b-4731-a769-bc10ad75a823" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_ProbeCardsSegmentMember_f279b776-2453-4fec-b4d2-0c9d1b664803" xlink:href="form-20210327.xsd#form_ProbeCardsSegmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_9bb90664-117b-4731-a769-bc10ad75a823" xlink:to="loc_form_ProbeCardsSegmentMember_f279b776-2453-4fec-b4d2-0c9d1b664803" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_SystemsSegmentMember_81b1a536-2d9d-4747-93ed-81d77ac7d046" xlink:href="form-20210327.xsd#form_SystemsSegmentMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_9bb90664-117b-4731-a769-bc10ad75a823" xlink:to="loc_form_SystemsSegmentMember_81b1a536-2d9d-4747-93ed-81d77ac7d046" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateAndOtherMember_2426d5c6-fe3a-4f1e-9af0-94e60bd5ef7c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CorporateAndOtherMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_9bb90664-117b-4731-a769-bc10ad75a823" xlink:to="loc_us-gaap_CorporateAndOtherMember_2426d5c6-fe3a-4f1e-9af0-94e60bd5ef7c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_25fa16d0-e70c-4f8b-b425-602cef71047a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_907686b1-87c5-4137-8c3c-a8f1b7cef637" xlink:to="loc_us-gaap_SegmentReportingInformationLineItems_25fa16d0-e70c-4f8b-b425-602cef71047a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_64d43a7f-2126-4eb9-8a40-e1a6b5074815" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_25fa16d0-e70c-4f8b-b425-602cef71047a" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_64d43a7f-2126-4eb9-8a40-e1a6b5074815" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_940797f9-66df-43c3-a1ba-b2d517a5a5f3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GrossProfit"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_25fa16d0-e70c-4f8b-b425-602cef71047a" xlink:to="loc_us-gaap_GrossProfit_940797f9-66df-43c3-a1ba-b2d517a5a5f3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_GrossMarginPercent_9a8ca0ee-b448-4336-90df-6b03a05dd7fe" xlink:href="form-20210327.xsd#form_GrossMarginPercent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_25fa16d0-e70c-4f8b-b425-602cef71047a" xlink:to="loc_form_GrossMarginPercent_9a8ca0ee-b448-4336-90df-6b03a05dd7fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails" xlink:type="simple" xlink:href="form-20210327.xsd#OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"/>
  <link:presentationLink xlink:role="http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_b29f49ab-6db5-4eb6-9417-a591f7fdbed7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_9f31152a-e557-40c7-ad03-e4f0c4d1ac78" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_b29f49ab-6db5-4eb6-9417-a591f7fdbed7" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_9f31152a-e557-40c7-ad03-e4f0c4d1ac78" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_210adff4-0389-4416-b638-b510db7345c2" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductOrServiceAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_9f31152a-e557-40c7-ad03-e4f0c4d1ac78" xlink:to="loc_srt_ProductOrServiceAxis_210adff4-0389-4416-b638-b510db7345c2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_92eaa0c8-8ae5-45fc-87c3-c6d88641416f" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_210adff4-0389-4416-b638-b510db7345c2" xlink:to="loc_srt_ProductsAndServicesDomain_92eaa0c8-8ae5-45fc-87c3-c6d88641416f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_FoundryLogicProductGroupMember_9f98be24-d213-4821-a313-c986f192c958" xlink:href="form-20210327.xsd#form_FoundryLogicProductGroupMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_92eaa0c8-8ae5-45fc-87c3-c6d88641416f" xlink:to="loc_form_FoundryLogicProductGroupMember_9f98be24-d213-4821-a313-c986f192c958" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_DRAMProductGroupMember_b552746b-d222-449b-9afb-e5c60c7a935d" xlink:href="form-20210327.xsd#form_DRAMProductGroupMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_92eaa0c8-8ae5-45fc-87c3-c6d88641416f" xlink:to="loc_form_DRAMProductGroupMember_b552746b-d222-449b-9afb-e5c60c7a935d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_FlashProductGroupMember_1d73a98b-bf5a-4803-91a5-9ff8419551f9" xlink:href="form-20210327.xsd#form_FlashProductGroupMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_92eaa0c8-8ae5-45fc-87c3-c6d88641416f" xlink:to="loc_form_FlashProductGroupMember_1d73a98b-bf5a-4803-91a5-9ff8419551f9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_SystemsProductGroupMember_16d8f698-c43f-4834-819d-46787f733e3a" xlink:href="form-20210327.xsd#form_SystemsProductGroupMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_92eaa0c8-8ae5-45fc-87c3-c6d88641416f" xlink:to="loc_form_SystemsProductGroupMember_16d8f698-c43f-4834-819d-46787f733e3a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_dc231c71-f4f4-4560-958f-04789491ae67" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_9f31152a-e557-40c7-ad03-e4f0c4d1ac78" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_dc231c71-f4f4-4560-958f-04789491ae67" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_4a98061f-8261-4665-86f5-42419d368f09" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TimingOfTransferOfGoodOrServiceDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceAxis_dc231c71-f4f4-4560-958f-04789491ae67" xlink:to="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_4a98061f-8261-4665-86f5-42419d368f09" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransferredAtPointInTimeMember_67945f43-11e1-4dde-8d8f-dee7bf826ac3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TransferredAtPointInTimeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_4a98061f-8261-4665-86f5-42419d368f09" xlink:to="loc_us-gaap_TransferredAtPointInTimeMember_67945f43-11e1-4dde-8d8f-dee7bf826ac3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransferredOverTimeMember_09947658-5723-4c55-aa25-f418d327ae20" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TransferredOverTimeMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TimingOfTransferOfGoodOrServiceDomain_4a98061f-8261-4665-86f5-42419d368f09" xlink:to="loc_us-gaap_TransferredOverTimeMember_09947658-5723-4c55-aa25-f418d327ae20" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_03138366-dc40-4682-9b4c-719122bd3925" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_StatementGeographicalAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_9f31152a-e557-40c7-ad03-e4f0c4d1ac78" xlink:to="loc_srt_StatementGeographicalAxis_03138366-dc40-4682-9b4c-719122bd3925" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_SegmentGeographicalDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementGeographicalAxis_03138366-dc40-4682-9b4c-719122bd3925" xlink:to="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_TW_aa0dec16-21cb-4c7d-833c-3e06e10d55c9" xlink:href="https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd#country_TW"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:to="loc_country_TW_aa0dec16-21cb-4c7d-833c-3e06e10d55c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_CN_85904d22-64bc-4aff-897d-c8a507fbcd4a" xlink:href="https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd#country_CN"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:to="loc_country_CN_85904d22-64bc-4aff-897d-c8a507fbcd4a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_US_bf243b86-39fa-4ab2-ae7d-dd06d67d6a9b" xlink:href="https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd#country_US"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:to="loc_country_US_bf243b86-39fa-4ab2-ae7d-dd06d67d6a9b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AsiaPacificMember_56561062-6784-47d7-9096-a1745c8050a4" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_AsiaPacificMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:to="loc_srt_AsiaPacificMember_56561062-6784-47d7-9096-a1745c8050a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_KR_670955fe-3471-483b-bfea-109edacc8d80" xlink:href="https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd#country_KR"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:to="loc_country_KR_670955fe-3471-483b-bfea-109edacc8d80" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EuropeMember_78e64671-2d16-42b7-b7f2-842036ebde5f" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_EuropeMember"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:to="loc_srt_EuropeMember_78e64671-2d16-42b7-b7f2-842036ebde5f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_JP_c5e14069-4693-4293-a44a-0a97460da0bb" xlink:href="https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd#country_JP"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:to="loc_country_JP_c5e14069-4693-4293-a44a-0a97460da0bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_RestOfTheWorldMember_577eae9b-788e-45b4-8a1c-b1fb5d5cdfdf" xlink:href="form-20210327.xsd#form_RestOfTheWorldMember"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_1288d453-8071-49a4-afa8-58849c421ab2" xlink:to="loc_form_RestOfTheWorldMember_577eae9b-788e-45b4-8a1c-b1fb5d5cdfdf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_89d74724-40dc-4684-a763-30ee9284221c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_9f31152a-e557-40c7-ad03-e4f0c4d1ac78" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_89d74724-40dc-4684-a763-30ee9284221c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_3dad9d54-38c8-40fb-ac6c-b2ade8597d7e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_89d74724-40dc-4684-a763-30ee9284221c" xlink:to="loc_us-gaap_SegmentDomain_3dad9d54-38c8-40fb-ac6c-b2ade8597d7e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_ProbeCardsSegmentMember_3b89d6ed-df88-423a-9b4a-a6ef92fc84be" xlink:href="form-20210327.xsd#form_ProbeCardsSegmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_3dad9d54-38c8-40fb-ac6c-b2ade8597d7e" xlink:to="loc_form_ProbeCardsSegmentMember_3b89d6ed-df88-423a-9b4a-a6ef92fc84be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_form_SystemsSegmentMember_f3ee81e8-3c25-49c9-9941-b4e3daf9e9fa" xlink:href="form-20210327.xsd#form_SystemsSegmentMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_3dad9d54-38c8-40fb-ac6c-b2ade8597d7e" xlink:to="loc_form_SystemsSegmentMember_f3ee81e8-3c25-49c9-9941-b4e3daf9e9fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_e7a59dd4-f8c3-48d2-a733-ce7cc3b8d93f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_9f31152a-e557-40c7-ad03-e4f0c4d1ac78" xlink:to="loc_us-gaap_DisaggregationOfRevenueLineItems_e7a59dd4-f8c3-48d2-a733-ce7cc3b8d93f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_95ea39f9-70a1-4646-bfbc-eaa39f7b8bac" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_e7a59dd4-f8c3-48d2-a733-ce7cc3b8d93f" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_95ea39f9-70a1-4646-bfbc-eaa39f7b8bac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<FILENAME>form-20210327_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:country="http://xbrl.sec.gov/country/2020-01-31"
  xmlns:currency="http://xbrl.sec.gov/currency/2020-01-31"
  xmlns:dei="http://xbrl.sec.gov/dei/2020-01-31"
  xmlns:form="http://www.formfactor.com/20210327"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2020-01-31"
  xmlns:us-gaap="http://fasb.org/us-gaap/2020-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="form-20210327.xsd" xlink:type="simple"/>
    <context id="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i42d84a843b47435586149a7c7a137464_I20210430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
        </entity>
        <period>
            <instant>2021-04-30</instant>
        </period>
    </context>
    <context id="i3228e9770d2f4580bee755ffe4247a1d_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i6ff785e4fad44fa49d409ad053960f8e_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i6cae11157f05483aa2be0dea51aecf10_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="ieb26fac254654bf7bca7afa960c2d3a8_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i0b15d00309954fbba558e9542f0721d2_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i04bb121199ae4cd69f50b4c605a1ff96_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i77e293278a644ee6b89b90c93275d810_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i3f1bf6828a7940f4a13d6bb6704cf1eb_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i729f4638ab4e4511bd4ad2752c512e82_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i0d11788f365441038bf9e977162280c1_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i13671f0a918f4bd48deb65cded0db074_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i2eec7d0dc66b47db97e1ad7db6a10e09_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i6f3e2c8af2304eafbee443016913a3e8_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i500f4312ae1c44caa47d6cdcc79ec327_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ia9682d64c1fc451998455e633eab2a10_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i4e6d5f6ac11b46d9a74b777fbb336ea6_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="if41d69e944ef45a4b44eec3d4a223fb2_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ib7bad9174c7c49609d91e6d5c3dfc9ae_I20191228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</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="i4c6143c1609c4ab2bce37d037f54c330_I20191228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="id8f458398d8c43e088d130df56016bb6_I20191228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</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="i44627f1e70d34766a2dbe07b15fb6950_I20191228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</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="i7a3c798ab7664717ba65e058bdccb09a_I20191228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</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="i1eeff05d49e94a6396339ea847351869_I20191228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="ifb2d6dcf47c54abbb839c266c9cc4ee9_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i8e0b808cf3604c4495edbf47e23dcbe3_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i18a16832376f439cb95baeee9a407ce6_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i011a585811394934834767c1c02a574f_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i1aa740cb5cdb42f0823f14129a3efe75_I20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-28</instant>
        </period>
    </context>
    <context id="iedf25ec0f0c343d28e43f56ad6d7296d_I20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-28</instant>
        </period>
    </context>
    <context id="i3b762e4947834ca39c189d5d1b398f14_I20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-28</instant>
        </period>
    </context>
    <context id="if7864453957e45bd925c6dd5aef3d902_I20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-28</instant>
        </period>
    </context>
    <context id="i594991f9cbb0403284090c5271d3ab3c_I20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-28</instant>
        </period>
    </context>
    <context id="i544b840724324a999b22494d0651898a_I20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
        </entity>
        <period>
            <instant>2020-03-28</instant>
        </period>
    </context>
    <context id="i9feef629422b43d1a34d669ca728b358_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">form:IntelMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i0db017a702d741ec90758394f990256c_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">form:IntelMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="id7cd3ffae18748e8a7b7c82d53cda841_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">form:TaiwanSemiconductorManufacturingCoLTDMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i92fb9c092984474caaff0d4eb06e6da1_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i048871285eab482f8256c3c11121fb6d_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="idf8294fdf189489284ad6181584d738a_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">form:MajorCustomer1Member</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>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i2b0d72da70f64e2baa56826b9993d786_D20191229-20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">form:MajorCustomer1Member</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>2019-12-29</startDate>
            <endDate>2020-12-26</endDate>
        </period>
    </context>
    <context id="ib5f0fa9fa6e546b4b723ae9c7eb7d887_D20191229-20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">form:MajorCustomer2Member</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>2019-12-29</startDate>
            <endDate>2020-12-26</endDate>
        </period>
    </context>
    <context id="i59457e16636c4a7f800a5687585d0059_I20201019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-19</instant>
        </period>
    </context>
    <context id="i13d981e1e3314322933fc54d4f48f8ad_D20201019-20201019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-10-19</startDate>
            <endDate>2020-10-19</endDate>
        </period>
    </context>
    <context id="i50122fb52abb4650a343bcaf0eb341eb_I20201019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-19</instant>
        </period>
    </context>
    <context id="i4be5a37c2e7946ba905ae550ba42fc3c_I20201019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-19</instant>
        </period>
    </context>
    <context id="i7ba3f46d5d654736b039a7f7c8625257_D20201019-20201019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-10-19</startDate>
            <endDate>2020-10-19</endDate>
        </period>
    </context>
    <context id="ibe9a4e09fb1948b2b4e9027bd1d509a7_I20201019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-19</instant>
        </period>
    </context>
    <context id="i660f2d27d2e8460b88e123b35c1c4a93_D20201019-20201019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-10-19</startDate>
            <endDate>2020-10-19</endDate>
        </period>
    </context>
    <context id="i34afe745690d4ed7a3e161410ab24d3a_I20201019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-19</instant>
        </period>
    </context>
    <context id="i3619f7a8938a4046b1854b6d2b2b5896_D20201019-20201019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-10-19</startDate>
            <endDate>2020-10-19</endDate>
        </period>
    </context>
    <context id="i77516486733640dab1fa1c83989f6557_I20201019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-19</instant>
        </period>
    </context>
    <context id="i091c18f477db46a0be4b3906425aa30c_D20201019-20201019">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-10-19</startDate>
            <endDate>2020-10-19</endDate>
        </period>
    </context>
    <context id="if72cec7ca3b342c2b044431e1d621082_D20200730-20200730">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-07-30</startDate>
            <endDate>2020-07-30</endDate>
        </period>
    </context>
    <context id="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-30</instant>
        </period>
    </context>
    <context id="ide7271024d174ef18742760227df34bd_I20200730">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-30</instant>
        </period>
    </context>
    <context id="icb2bd5aa7a2f46d3b6a4d845d24c4fe5_D20200730-20200730">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-07-30</startDate>
            <endDate>2020-07-30</endDate>
        </period>
    </context>
    <context id="i9e3864372b01457b867f40f1b99d5eb7_I20200730">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-30</instant>
        </period>
    </context>
    <context id="i238eedca206d433f933f027051460d35_D20200730-20200730">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-07-30</startDate>
            <endDate>2020-07-30</endDate>
        </period>
    </context>
    <context id="i766bb25c58e7483198d84fccbdf59f49_I20200730">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:InProcessResearchAndDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-30</instant>
        </period>
    </context>
    <context id="i5fbe358d1fba4d15802003da152cabe5_I20191228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="i16d1465663cf4181b88e262e919eac34_I20191228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="ib5ea062f3a074d648ba1fc7f52535528_D20191229-20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:FRTGmbHMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-12-26</endDate>
        </period>
    </context>
    <context id="if1b23dd6933f4e889c4bb707850bc3be_D20191229-20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:FRTGmbHMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-12-26</endDate>
        </period>
    </context>
    <context id="i766fc09da35840daa1048417dec5b977_D20191229-20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:FRTGmbHMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-12-26</endDate>
        </period>
    </context>
    <context id="ie80f2e2beded4af1a1f243fd65dc297b_D20191229-20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-12-26</endDate>
        </period>
    </context>
    <context id="i82b5853bb17a42078ac2a333aeb2bed1_D20191229-20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-12-26</endDate>
        </period>
    </context>
    <context id="i49fc19518314461bae583bb4132265b7_D20191229-20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-12-26</endDate>
        </period>
    </context>
    <context id="i854854c15af54644af4470da171a27fd_D20191229-20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-12-26</endDate>
        </period>
    </context>
    <context id="idb30b39ef576445dabd0e0388c84f91f_D20191229-20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-12-26</endDate>
        </period>
    </context>
    <context id="i8fd0f82133594c9bb92ea3b28d516c49_D20191229-20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-12-26</endDate>
        </period>
    </context>
    <context id="i6e37b691b2884ea28ca42c1218b34265_D20191229-20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-12-26</endDate>
        </period>
    </context>
    <context id="i7ca8f2c536d640d5bbafd309bf860ebe_D20191229-20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-12-26</endDate>
        </period>
    </context>
    <context id="icbf0d7ae2be742f18f08ffe120d98cd4_D20191229-20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-12-26</endDate>
        </period>
    </context>
    <context id="i619d2f5efcc04d5787337604033fed50_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i5dccd17e17534cb18864a0ff1fdc068f_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i48f3d16ebc514c6ebfdeca8868c3a584_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i145115c47a3c41fc84edd572945de66b_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="idcc1dd5d0e904069951eb9d57880afab_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:BaldwinParkMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="ibec0ba8b66c74d83972365b461b6652f_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i68179e3b41cc4cb58d394c315b7e924d_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="ieab7c0ab187d444c939db25d53fe740e_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:HighPrecisionDevicesIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i7e83c001dbc94677a59ca9c262df771e_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="id7ca4f9333334d088e8e33a90870e029_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="icc685b74f6e64416a016dc848f1e2524_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i440894a76a544ec0a0423734205ccc41_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ifa0ef42d3e7c4271a02b2b18c7f35368_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">form:ExistingDevelopedTechnologiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="iecc90425d12643a18c349e91c410c441_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">form:ExistingDevelopedTechnologiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="ifeb7f6443c044ccc90725224ce7d04c4_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ic403daa15d7b47ce9cd798fbea57a31a_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i7bedb36b172349739dacb4c49e918974_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ica1dbc1b460944e481d011c33fd38539_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i3b84a14f3fb74e3cb977339c721078b8_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i85e30e59906a44f59ba583be2d3605a0_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i4bc8eb7c629f4a2480195a0322e38b58_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:InProcessResearchAndDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i5ce2f0f934674931972c4ef6efa9f7db_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:InProcessResearchAndDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i0d1ea4fd763a46b5a3950b317c8ffaaf_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i58b6c2d1e0654942851c8b0deb45c8eb_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="iefe5e641875c47c38077d9787aeda6d1_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i827c2859272f46d1af6b076a94267ac8_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i83382e7d2c8b4fabb2db33d207dfb366_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="if17228f003c047758a39294ad5ba5d27_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i8c9ac72027b144dcb23e62669dfd6195_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ia598581b10a74d18bada3c46855fa52b_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ic9f7e7ae347849c5b4e45cc4c1175466_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i145f335ea1fb463a8fc222c84ac94981_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i4f967f58aa1640f0b24801437f5fe982_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ie3f11bbb05014b3a83067a076d211d97_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CommercialPaperMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i7885f9de272c46a38898e5b2b6cbeadd_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i7144b8981c9b457781eb7907f050e5f1_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i5a9be7cee5ec4fd9be9fa2e73eff96cf_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i6247d6e9647449e09fed7cab29b95aae_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i9419dfa20588499f825ec3b1b3519791_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ibd52566f15684ea5b8dc2aa32c37242e_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i89ef81a9020d44ecb89f4714a761bab6_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i93d3ad69b7fb46b0a4b4748efdc779b4_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i5e32dcdbcf724b128e337737e3527dab_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="id9361ecbb0904810b3b071f12fda23ff_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ifdb56f2ebd8041eaa7de2d28e2d7d79c_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i0012f13b69834e1a862520ec5f44fed2_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i7bea863d5baf4ad69c8218ba4f322c22_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ib7dec811e88d4655b3519f0d1713cc26_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="iac59b73a86d648b3aabedd57b6040b04_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i9a62e1daa19e43afad5bc9f161785331_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="if182b9d1747c4455ab48ec0820db5ba1_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ife64508f4e4e4720b46c14af9cd0f17b_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ib02d06d5d50544ad87c8183e83c4cfd9_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ia1f273bac97240f89bdc17a0e9c60164_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i199d8012cdfc45f880bde4f62358b733_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ibfaae59a324f4a38ac0390337ca133de_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i48299e9912ad4118b96449675e783bd4_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ib26f1c31bfed44a7b777060c7786edb4_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i6fdc49bfe5094822b84e50642838474e_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i342792ee749a494da9570345238082da_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i13a31abba8c54278b30c172e00b5f42e_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ifb9953b260ae40838020fbaa3bc54a54_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i9346c5eb2b00412bbf91703e9e24c1b6_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="icaf47150e8b64314ac28c470e9ff45b2_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ic8892fcf21d648e986b95d0d8a8b1378_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i66caef15586448fea9736569b0183519_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i3951498c7cb949f3a19e0a998345885a_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="icbad4b8f1ec34b5285e9ac865f168400_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i7c488846135d4af3aca64c3281bf9e94_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i3ac46dbef9b2494a8f8bfe37eda43601_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="ib024db7786014f259e9a6aa19b39ccba_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="iffdf278b8e9d4fdd83f87f976f008abc_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i0fdfcd9576454a7684dea61db5dc6a09_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="ie90e314e5c2342c3a72103b23021b470_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="iadd867276cb64488870fae3b03ce0f8d_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="ieefc32debfcd4346a84c8cc01bdc0c19_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i69197b029fd647eab431903dd357b183_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i826c13f7503f4c4c8d9c8537ae0daeac_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="if16a4006470e42feb581eabf235c1005_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="ibfec3676905d44fe9b156bb7dc84d2ed_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i8fad041c01f84a6484a519e41ec2632f_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:USGovernmentAgenciesDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="ib780fe1f91bd4cedb3287f12f71bafa0_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i22041ee55dab44b39a48fdeeeec97a18_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="if7ef9c26f9144425bfb963ca243ada33_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i8708037d51394da19f4b3468b4ee0394_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="if425e69f00aa4c44870f48a1c48e6b67_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="ie5589a6446ed4d7d8a4315ece55e84b4_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="ib1c2c291548b4506bf724e9fc37b3099_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="iafd986cdb6c8480ba5063a9fa05344d4_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="ia931b26e563249a2bd0c872abc8e2fc7_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i1438f4502fd947978ae632cfa778e6c4_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="if5b5c415a9d1484185de57538d5cde01_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeContractMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i20f414dff24540bba6daa384ee099878_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="ic7be3481579345b5b40f5d8520a0bfdf_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i72cf10ac46064eaba16e3a534a800ed4_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="ie1651b021d4f438f88707e0f1893cda3_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i6990a2aeb0d84933a52a08cd48837eb6_D20191009-20191009">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:FRTMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-10-09</startDate>
            <endDate>2019-10-09</endDate>
        </period>
    </context>
    <context id="i2142b0f687f145299057abe4bd16bfa6_I20191009">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">form:FRTMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-10-09</instant>
        </period>
    </context>
    <context id="iadf2c82018d340d88770a032d367f21e_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</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>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i05cfd20b4db7493c86d0e3e642e17793_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i090130968f6b4bdd87a9441ed66661b2_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</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>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i05d42ee6296445d58b8575dcf4f29931_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i1ff9acf7e74f462a9ac8974a00e30852_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PositionAxis">us-gaap:LongMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ic926e43ea3034c338f2f1193109969da_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PositionAxis">us-gaap:ShortMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i71bee5004c77402fbdca0a87dc12dc36_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:JPY</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PositionAxis">us-gaap:LongMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i30ce92d32c3a472db9133538bce6a64e_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:KRW</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PositionAxis">us-gaap:ShortMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ia07894792f2a45cd8ea42bf6a6de0ac9_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:TWD</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PositionAxis">us-gaap:ShortMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i29f6a021e44143acb33d3256fd42ec82_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i41f5ac4879b947f5882bf744929e0d10_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:OtherNonoperatingIncomeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i855be42e47a54624a24482d75efbd5e5_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:OtherNonoperatingIncomeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="ib9af7ff396304640b3355d49e0973eb0_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i858922598a254445afd9b4bdd08eb539_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i57c021cbe46b4d1d8417533c34518b6d_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i65f05b5fd52044c78876707c5ac38fb3_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="iab97b4d4a8d54ea6a62c1cf1466a5227_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i95df57ad055943a493228cd16b7d5caf_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="ib12af2ac56894cf3990e1ac2d88df7f5_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="idf711117c5ea427280ebc4526aec164a_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i104a76d3d05e44109700c142c3f865fb_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsNonrecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="if72f6c99cda54fccb7c253fb2c11125a_I20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsNonrecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-28</instant>
        </period>
    </context>
    <context id="i748bc4ea3d26497da8a4181447809083_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ib556c791343643a2b852ced1d6bc6139_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="ib8c908da8479474d8c6d00efea213bb8_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ib5010210b88e428c83f009dd6f0543ed_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i7ceedab9d7b3401c8673c48e522712cc_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i22c4b1b8854f4d74b3bc20b665ebe325_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i63feb9a9bc9048c18f431a4bcc814a1c_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i0894b5d61f404b368720a7e152384e6e_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i8f10ce656749423b840c7a310508812a_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="if5590f5fa23f460786af19183085bf1f_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i83a1c50d70a44ceead8fd2607534264c_I20201026">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-10-26</instant>
        </period>
    </context>
    <context id="i8fa8e4913bce435f98a1ae9ddcd3122e_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="ia53c8599a7ab4684940e34c0f363d1f8_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ifb72ab70068e414e836189f85f45fc41_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">form:EquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i9fc06d57d16a4e70b6f7c2ac52ee8fe0_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">form:EquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i159cea8e929f4890970bb676424e3f92_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">form:EquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ie1e912506c2641f3bb7d9d4001735277_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">form:EquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i870d2a11d24245099f539695bcdec5d2_I20201226">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">form:EquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-26</instant>
        </period>
    </context>
    <context id="i387b92b675da43d5bf75aacb5290ba08_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">form:EquityIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i05ad810c16c74d3086a67614c59b1eab_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i316667ec5afd4cb7a006803d0a1e78e2_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ib24b7fe86f6246ff9aa7cd150451397b_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i6979a8e46f2c4ffc9073db33ed8d7c2d_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i65abe29b399a4adfa10e5b326d1b11f1_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="if243d8f43a594989ae63b084745dfc7c_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i6f47cb425bf440ec8f2aa4f802c7c3c8_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">form:PerformanceRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="iba459ce5a545461593f2866126f3c0c2_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">form:PerformanceRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="ic2b8dfd7239b4fe2aef272a46ae68395_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ic8ccc8b2e39946abb7359d53c4a5740e_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="if0ea874df2bd442183f529523316f9f0_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:AutomobilesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="id24d49a556714c20b711b5b1ebcdc56d_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:AutomobilesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i95ccedbfe61e47bfa57b17b6ebc66ed3_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2021-03-28</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="ia8e88a385c6347bc8a4d9e674e9ca6aa_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2021-12-26</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="i2e3d772ffb614ae983ec9483968502d3_I20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2023-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-27</instant>
        </period>
    </context>
    <context id="iae880a7f70674f27a92416741be5ae48_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="ic0ebe9afd5434ebb846f70dd43904b59_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="ie9fd9bd28cb34b25917766a905b820c1_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateAndOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i1d1eb6004c3c4713b6b35cfd94353d5c_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i8d11f1aa84f742768a9dbdf9a7d9d40e_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="ib46109fb73454d9ab19c49b1bebeba65_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">us-gaap:CorporateAndOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i17efef4193d241de9fd4b4aa18935ad2_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FoundryLogicProductGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i7da0b92a26ea4b8385b19301bd68ef11_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FoundryLogicProductGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i06d0926b712243129dae4fa849a0a9ea_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FoundryLogicProductGroupMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i37881b07144e4eea8645bdfdfe097bd5_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FoundryLogicProductGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="icaa7b11a536247a8bfa781f53efdf44a_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FoundryLogicProductGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i3e9efdad47524942afd5e27a23964d32_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FoundryLogicProductGroupMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="ia931704fac454b338df11d146e9a2eff_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:DRAMProductGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i5cfc6e078c914c129e8355f84fa7d747_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:DRAMProductGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="ibcae4145fd9c44f4b14aa1fe329fbf70_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:DRAMProductGroupMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i9795e20452c245b99fdd733af9bd9df2_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:DRAMProductGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i6a137e953a044d048cd400c5ecf42ff1_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:DRAMProductGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i39be1a79f7ae423f96574447b73ca5e2_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:DRAMProductGroupMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i8d01e67aa3a746e084149947068b844e_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FlashProductGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="id191128bfc424119bcbf275f3e530dd4_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FlashProductGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i5bd4e3f47e33489aaf04bc6b4e9b7f89_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FlashProductGroupMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i2a8b381a2ab94c69856c5a2eb280a578_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FlashProductGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i97fea9c8fd424e59b65b256f1c86d121_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FlashProductGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i7bc781a5253844f3877a8b110caec858_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:FlashProductGroupMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="ic16eb573ec524ec7aaaf62f8d10f71e4_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:SystemsProductGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i89fe92f3430b474f83a23d49a6dbafc2_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:SystemsProductGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="ie705bdb63537443298fbcfcebd162058_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:SystemsProductGroupMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i9e79fb4d68724345b39e4b4bc4eb7c01_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:SystemsProductGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i0679901700b2486f9c867b8e08b17728_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:SystemsProductGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i4759480c0617414696c39f2e8a2409e7_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">form:SystemsProductGroupMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="ibbdd3f9e212d4506a836ccb10f6e47b9_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="id0718e19df664d0c8fb6766b10fd3625_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="idfb6a757a29d49308db33aeaef39a6e3_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i7ba9846df54147c19e3689b354c4abb7_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i4688ad32de06414e9218db7ef867f100_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i339f727e2f4641348d09b357bc256118_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i958689f927964444a9005b48f3f1cd18_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i680008eb5c844aa2a28d1642a0f15c8c_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i0f9adfb09b8f4ab6ac2ab399cbac9a3e_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i56062132d29440f281913bf199e1ea1c_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="ib36601237b6d4b7b966d7a550eccee3f_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="iad4ec9255c74464982894b272350432b_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i47cf58e14027485da9f1806f52ec2d8d_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i508e3a788e944a4584d46e5d7b530c65_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i7eaa7209f1e1493aa0245c1722e66c95_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i3857b626483842778a520d0a41280961_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="ic122ffb3a2d64e3b969ffc2c161d5bf3_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i3d85c4aaf19b4cb28ce656d9d253bb5a_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i032dbb7cc2674d6d8ff265a8c2185bd6_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i654d15775fc749c4b27da9372fb7a810_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:TW</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="ic1accfe97f8f484d878b703e5c40005c_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i40fb54f5e8714d47832f057095fdd640_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i53ff53ba243f4f0cb599eb93c6dfc567_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="ib347dd7f3a714612afde16371c64f12f_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i2b911ab200b84c358dddd7385b29bcdc_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i9d1f83fb61604c4e86f699bb0e54187c_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i73700f90cb854d8b80da4f457c252a42_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="ie59a8f92898a4fa5a4601fc6fcaac1df_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i0ddb8609fb5244fc9f93a64b8cea3bda_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="ibf4405a844544411add62f40112d7546_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="ia880de968dde4a95ab03f10c63cf1cef_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i80f0323a25944c2682fe3fc1ad38512c_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i16fe4cc5dcee471d8123f16d8d072680_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="ie42fe6855e514f228ed0815382321ca8_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i682500a8836e44ceb66954588f17cc72_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i6a69df588ff04e19a7df5ca181bcb236_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i78f63a92bb95483188c38479b8516d32_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i53c327ad0e9e410eb9fb7fb5d0892431_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AsiaPacificMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="idd07a09dea0243c881f108ab527080a5_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i39a61f079ac545feb8809d5a842ee8b1_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i58b62a5b2e7e4947988950b5e020b47e_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i4e660b622ae94bc58ee3278d89212060_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i015d7e55169940f9987b4c2e71a7aa16_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i09bb6bc9f3d04815b88619a3f2487ac9_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KR</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i4982510ad45e40c2b807c2e86413bb07_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i64db8a68c3594e57a749760302f56fc8_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i4492ef2d17954c888e705d4c19f02f29_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="ibdc0fcb7d49c4728b3cf73f327c1a0b4_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i14acbd2358a1447bab4e14686665e5bc_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i6c0294018ff9442a960d081a3653d051_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i69c600524b554299a6aadf4d658f8ad6_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:JP</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i34afca68b1144a9183ea6da159a7050c_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:JP</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="id487f2a1555d4150a10a17197475ff82_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:JP</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i41c8414a4aec489093402d27d3a92a91_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:JP</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i0435f4eeea3e474183fcc858a4ba9981_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:JP</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i1484b211f9c94f359a281ec877dcfd16_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:JP</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i7205a4b7535c4d5881aa9c21967f2996_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">form:RestOfTheWorldMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="iac2687805b774ca6955d6ca8c74cb17b_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">form:RestOfTheWorldMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="i1dcc3d38bd6a498f85e6e5bee8b57b2f_D20201227-20210327">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">form:RestOfTheWorldMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-27</startDate>
            <endDate>2021-03-27</endDate>
        </period>
    </context>
    <context id="ie8fb6452425e4ec18b22ff7303ac3204_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">form:RestOfTheWorldMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:ProbeCardsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="i39aecdec956e40c096226f6afc35944c_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">form:RestOfTheWorldMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">form:SystemsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <context id="ic64b1395f36741988775a19212150652_D20191229-20200328">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001039399</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">form:RestOfTheWorldMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-29</startDate>
            <endDate>2020-03-28</endDate>
        </period>
    </context>
    <unit id="shares">
        <measure>shares</measure>
    </unit>
    <unit id="usd">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="usdPerShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="number">
        <measure>pure</measure>
    </unit>
    <unit id="millikelvin">
        <measure>form:millikelvin</measure>
    </unit>
    <unit id="eur">
        <measure>iso4217:EUR</measure>
    </unit>
    <unit id="jpy">
        <measure>iso4217:JPY</measure>
    </unit>
    <unit id="krw">
        <measure>iso4217:KRW</measure>
    </unit>
    <unit id="twd">
        <measure>iso4217:TWD</measure>
    </unit>
    <unit id="segment">
        <measure>form:segment</measure>
    </unit>
    <dei:AmendmentFlag
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80L2ZyYWc6N2I0NjZiZWY2NWJmNGY2NzhmYjU1MDQ0MTJlYmY0NDIvdGFibGU6Yzk3YjQ1NmIzYzU3NDE5YTk2Y2JkOWFlYmQ4YWZjNTQvdGFibGVyYW5nZTpjOTdiNDU2YjNjNTc0MTlhOTZjYmQ5YWViZDhhZmM1NF8zLTEtMS0xLTA_5606cb61-84c9-4bfc-aca9-c050dc61a2cd">false</dei:AmendmentFlag>
    <dei:EntityCentralIndexKey
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80L2ZyYWc6N2I0NjZiZWY2NWJmNGY2NzhmYjU1MDQ0MTJlYmY0NDIvdGFibGU6Yzk3YjQ1NmIzYzU3NDE5YTk2Y2JkOWFlYmQ4YWZjNTQvdGFibGVyYW5nZTpjOTdiNDU2YjNjNTc0MTlhOTZjYmQ5YWViZDhhZmM1NF80LTEtMS0xLTA_0a1c9bb2-e91a-49d7-9177-554301ae761d">0001039399</dei:EntityCentralIndexKey>
    <dei:CurrentFiscalYearEndDate
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80L2ZyYWc6N2I0NjZiZWY2NWJmNGY2NzhmYjU1MDQ0MTJlYmY0NDIvdGFibGU6Yzk3YjQ1NmIzYzU3NDE5YTk2Y2JkOWFlYmQ4YWZjNTQvdGFibGVyYW5nZTpjOTdiNDU2YjNjNTc0MTlhOTZjYmQ5YWViZDhhZmM1NF81LTEtMS0xLTA_2299c6ed-fa5e-4530-9364-a92444f6a724">--12-25</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80L2ZyYWc6N2I0NjZiZWY2NWJmNGY2NzhmYjU1MDQ0MTJlYmY0NDIvdGFibGU6Yzk3YjQ1NmIzYzU3NDE5YTk2Y2JkOWFlYmQ4YWZjNTQvdGFibGVyYW5nZTpjOTdiNDU2YjNjNTc0MTlhOTZjYmQ5YWViZDhhZmM1NF82LTEtMS0xLTA_60a9ce7c-2a32-44c9-94b8-7b3544fc3e0f">2021</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80L2ZyYWc6N2I0NjZiZWY2NWJmNGY2NzhmYjU1MDQ0MTJlYmY0NDIvdGFibGU6Yzk3YjQ1NmIzYzU3NDE5YTk2Y2JkOWFlYmQ4YWZjNTQvdGFibGVyYW5nZTpjOTdiNDU2YjNjNTc0MTlhOTZjYmQ5YWViZDhhZmM1NF83LTEtMS0xLTA_a5103ac6-d718-4fac-8835-6b5723bc0c0c">Q1</dei:DocumentFiscalPeriodFocus>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="i95ccedbfe61e47bfa57b17b6ebc66ed3_I20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xMTYwL2ZyYWc6ZDU4ZjlmMTM5YzRhNDAwN2FkYWNmMDIwNzU3NmM5OGQvdGFibGU6MTUzNmFmMGI4ZmUyNDdlNDk4NjljNjhlYjAyMGYzNGUvdGFibGVyYW5nZToxNTM2YWYwYjhmZTI0N2U0OTg2OWM2OGViMDIwZjM0ZV8xLTEtMS0xLTM3Mg_76417845-a684-42c4-aa45-7d78a5d2034a">P9M</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="ia8e88a385c6347bc8a4d9e674e9ca6aa_I20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xMTYwL2ZyYWc6ZDU4ZjlmMTM5YzRhNDAwN2FkYWNmMDIwNzU3NmM5OGQvdGFibGU6MTUzNmFmMGI4ZmUyNDdlNDk4NjljNjhlYjAyMGYzNGUvdGFibGVyYW5nZToxNTM2YWYwYjhmZTI0N2U0OTg2OWM2OGViMDIwZjM0ZV8yLTEtMS0xLTM3Mg_ca48ee9a-9f53-49cd-a17e-ebc7947a0b4c">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="i2e3d772ffb614ae983ec9483968502d3_I20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xMTYwL2ZyYWc6ZDU4ZjlmMTM5YzRhNDAwN2FkYWNmMDIwNzU3NmM5OGQvdGFibGU6MTUzNmFmMGI4ZmUyNDdlNDk4NjljNjhlYjAyMGYzNGUvdGFibGVyYW5nZToxNTM2YWYwYjhmZTI0N2U0OTg2OWM2OGViMDIwZjM0ZV8zLTEtMS0xLTM3Mg_740fee38-e5ed-41c7-89a0-fe40469b28c3"
      xsi:nil="true"/>
    <dei:DocumentType
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN184Ng_e2663e93-326c-4fe6-9d9c-40156705ff4d">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN18xMDQ_7fc00043-0f7c-45c1-b962-60fff5260ebd">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN18yMjY_c7c80346-07a2-41ab-adb3-4415a69f1d7f">2021-03-27</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN18yMzQ_f74f8e47-a166-4219-bba3-b5ec1e97eb01">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN180MDk_1da4ef4b-8828-4f56-b145-80a3f6af8618">000-50307</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN180MTU_49cd29bd-6fd9-4857-98f9-7983f1860e22">FormFactor,&#160;Inc.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGFibGU6OTg2Yjg1ZTZjNTI2NDlmMmFhYjhlMTJkYzc1Y2E4MWYvdGFibGVyYW5nZTo5ODZiODVlNmM1MjY0OWYyYWFiOGUxMmRjNzVjYTgxZl8wLTAtMS0xLTA_79e613b6-c980-47e1-9668-57632298e141">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGFibGU6OTg2Yjg1ZTZjNTI2NDlmMmFhYjhlMTJkYzc1Y2E4MWYvdGFibGVyYW5nZTo5ODZiODVlNmM1MjY0OWYyYWFiOGUxMmRjNzVjYTgxZl8wLTItMS0xLTA_e59b7f42-6a5b-446e-9e7e-ddbd605bb1a7">13-3711155</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN180Nzg_b6a27744-cf9f-4885-b69d-68678d282f62">7005 Southfront Road</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN180ODI_b00848b1-1c4f-47d6-a9b6-43af80ca21a1">Livermore</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN180ODY_27caa2dc-5186-4a41-939c-d5d2340ff811">CA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN180ODk_616de8a6-ccf9-474b-a6de-8e4b9ae14e7c">94551</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN181NTc_7e4e06be-2e5f-488c-a3a8-409d58ee7ec6">925</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN181NjE_f52d7a12-0735-4a3a-adf4-f4722ef30363">290-4000</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGFibGU6NTIzNDIwZmRmZDcyNGQ0YTljZTI3NzQ5NjM5ZTM3YmYvdGFibGVyYW5nZTo1MjM0MjBmZGZkNzI0ZDRhOWNlMjc3NDk2MzllMzdiZl8xLTEtMS0xLTA_38664e26-e9ff-47fc-8ced-2f7cabe30ebe">Common stock, $0.001 par value</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGFibGU6NTIzNDIwZmRmZDcyNGQ0YTljZTI3NzQ5NjM5ZTM3YmYvdGFibGVyYW5nZTo1MjM0MjBmZGZkNzI0ZDRhOWNlMjc3NDk2MzllMzdiZl8xLTQtMS0xLTA_e7fea3df-b0d3-4e89-91d1-efcf33299098">FORM</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGFibGU6NTIzNDIwZmRmZDcyNGQ0YTljZTI3NzQ5NjM5ZTM3YmYvdGFibGVyYW5nZTo1MjM0MjBmZGZkNzI0ZDRhOWNlMjc3NDk2MzllMzdiZl8xLTYtMS0xLTA_ec1d9e2b-5fea-4817-941e-a78c5068b478">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN18xMDY3_be367214-e04a-4c2d-a8df-50735052adbb">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN18xMzkw_30082900-f4ca-406e-9d30-d12c519d79c6">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGFibGU6ZmI5MGRhYjljYjVjNDk0YWI1NGY3NzAwNTA2MDE2NjcvdGFibGVyYW5nZTpmYjkwZGFiOWNiNWM0OTRhYjU0Zjc3MDA1MDYwMTY2N18wLTAtMS0xLTA_711770fd-b091-42bd-aa7e-7c68684823c0">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGFibGU6ZmI5MGRhYjljYjVjNDk0YWI1NGY3NzAwNTA2MDE2NjcvdGFibGVyYW5nZTpmYjkwZGFiOWNiNWM0OTRhYjU0Zjc3MDA1MDYwMTY2N18yLTMtMS0xLTA_dd7f6513-1e0f-4ea7-9dd5-a12f8065f8c9">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGFibGU6ZmI5MGRhYjljYjVjNDk0YWI1NGY3NzAwNTA2MDE2NjcvdGFibGVyYW5nZTpmYjkwZGFiOWNiNWM0OTRhYjU0Zjc3MDA1MDYwMTY2N180LTEtMS0xLTA_47233a98-5b42-484b-894b-181e6a2b8eb5">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN18yMTQy_9848577f-3ba6-4eed-80b6-19e5ff6ebf03">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="i42d84a843b47435586149a7c7a137464_I20210430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xL2ZyYWc6YWFhMGY4YjE2MjdiNGFhOTk2YWFjN2U3YmU2MGU4MzcvdGV4dHJlZ2lvbjphYWEwZjhiMTYyN2I0YWE5OTZhYWM3ZTdiZTYwZTgzN18yMTYz_91f91b8d-db0b-42c3-8ed6-9ede23ced05a"
      unitRef="shares">77622717</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMy0xLTEtMS0w_a56d4e8e-5101-4ee2-ba1c-78ef549aa85d"
      unitRef="usd">173616000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMy0zLTEtMS0w_f11da4f4-0c05-4c96-804a-686d0d395f5d"
      unitRef="usd">187225000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:MarketableSecuritiesCurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNC0xLTEtMS0w_5601cc3b-6b04-4c7e-9fff-23b788cb76f4"
      unitRef="usd">94093000</us-gaap:MarketableSecuritiesCurrent>
    <us-gaap:MarketableSecuritiesCurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNC0zLTEtMS0w_9aa87a13-99eb-4858-bee1-c6975bf60679"
      unitRef="usd">67810000</us-gaap:MarketableSecuritiesCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNS0wLTEtMS0wL3RleHRyZWdpb246OGYzOWI0YzdmNTJiNGUzZmE4MWQ5Mzc4MWRkMTU2MzZfNjc_1726fed5-499e-4711-a55f-723019b9972f"
      unitRef="usd">232000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNS0wLTEtMS0wL3RleHRyZWdpb246OGYzOWI0YzdmNTJiNGUzZmE4MWQ5Mzc4MWRkMTU2MzZfNzQ_0b50b8d6-f9c6-461a-9e0a-f0b185f62247"
      unitRef="usd">248000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNS0xLTEtMS0w_1a1911f4-add5-42c2-9267-5feef4fced3a"
      unitRef="usd">103500000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNS0zLTEtMS0w_ac65cd8d-0928-4b5e-a904-0076bd697673"
      unitRef="usd">107603000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNi0xLTEtMS0w_c737c578-b394-47d6-acc0-14adf89fdb40"
      unitRef="usd">104727000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNi0zLTEtMS0w_8e9fbe7e-89c3-4293-ba4a-248142ca244a"
      unitRef="usd">99229000</us-gaap:InventoryNet>
    <us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNy0xLTEtMS0w_78a8680b-7bee-4d07-8d2f-47766bfe3197"
      unitRef="usd">2798000</us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue>
    <us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNy0zLTEtMS0w_7f386ba0-8f37-46db-9e9d-3c55893fc873"
      unitRef="usd">1904000</us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfOC0xLTEtMS0w_d2f72176-7733-4e33-8875-61ceccc9cd92"
      unitRef="usd">19371000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfOC0zLTEtMS0w_84778335-9b5f-4118-adbb-662e6327bd19"
      unitRef="usd">23303000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfOS0xLTEtMS0w_2699ca99-f3c5-4f23-89e9-8cb3a2b4f963"
      unitRef="usd">498105000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfOS0zLTEtMS0w_ff53ec01-0c2e-49f8-aa32-77b4ed92b32c"
      unitRef="usd">487074000</us-gaap:AssetsCurrent>
    <us-gaap:RestrictedCashAndCashEquivalentsNoncurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTAtMS0xLTEtMA_e0a27d1f-19af-4a87-bd88-9e1e0c74b458"
      unitRef="usd">1894000</us-gaap:RestrictedCashAndCashEquivalentsNoncurrent>
    <us-gaap:RestrictedCashAndCashEquivalentsNoncurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTAtMy0xLTEtMA_125a428f-585f-45b7-ac09-449b82c7022b"
      unitRef="usd">1969000</us-gaap:RestrictedCashAndCashEquivalentsNoncurrent>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTEtMS0xLTEtMA_eca30d08-a1e6-4efe-bc4b-8d795fa67982"
      unitRef="usd">37208000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTEtMy0xLTEtMA_3623034e-0901-41ab-b7df-247c68dcd6d8"
      unitRef="usd">30756000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTItMS0xLTEtMA_c3b2fca0-f47b-4727-b3c5-3a1416f994a6"
      unitRef="usd">112312000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTItMy0xLTEtMA_e6204342-13b5-48ef-b7dd-6ad71e44bc14"
      unitRef="usd">104103000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Goodwill
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTMtMS0xLTEtMA_f37bf549-d085-4914-a0d2-1dfe53b1f7f5"
      unitRef="usd">214218000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTMtMy0xLTEtMA_8275f098-5fd4-4578-a2e4-ec7fb2b9223c"
      unitRef="usd">212761000</us-gaap:Goodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTQtMS0xLTEtMA_9e224e19-0841-4ee7-a4ee-82c9b15944dd"
      unitRef="usd">48786000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTQtMy0xLTEtMA_812f9bc6-6851-467e-ac22-3b84309a5a63"
      unitRef="usd">59147000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTUtMS0xLTEtMA_bd443dc1-aeaa-4a01-b338-7f12dd3f7d38"
      unitRef="usd">65821000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTUtMy0xLTEtMA_fdae1ac6-ed9e-434a-9716-fef5a4ae3901"
      unitRef="usd">66242000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTYtMS0xLTEtMA_21ac7d77-868b-40cf-a40d-cae367cebe75"
      unitRef="usd">1867000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTYtMy0xLTEtMA_62720062-af8f-4200-835d-b49289f33aa6"
      unitRef="usd">1165000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTctMS0xLTEtMA_27c318b9-fc0c-4193-ae18-57dad1c6fdf8"
      unitRef="usd">980211000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMTctMy0xLTEtMA_050ef1bb-b0de-48e3-a7a9-f3b3de4a4e82"
      unitRef="usd">963217000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjEtMS0xLTEtMA_2f3f195b-3042-48c2-89ae-d8c73dff3cc6"
      unitRef="usd">67720000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjEtMy0xLTEtMA_7c519abb-9880-4f47-8bec-1e0284e8e996"
      unitRef="usd">62045000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjItMS0xLTEtMA_47b6dce7-f550-456e-a98a-7e07972c9120"
      unitRef="usd">43468000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjItMy0xLTEtMA_eab3c994-cf1a-4e99-948b-0420e722348d"
      unitRef="usd">55342000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjMtMS0xLTEtMA_3be9c115-fab5-4986-b4f1-718f729611e4"
      unitRef="usd">9260000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjMtMy0xLTEtMA_8af615b5-df43-42f8-8605-d8f4027d100d"
      unitRef="usd">9516000</us-gaap:LongTermDebtCurrent>
    <us-gaap:DeferredRevenueCurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjQtMS0xLTEtMA_3eb7a2ac-6664-443c-be3b-bdbafa9e0e67"
      unitRef="usd">18644000</us-gaap:DeferredRevenueCurrent>
    <us-gaap:DeferredRevenueCurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjQtMy0xLTEtMA_37c85026-0a2f-4da1-863e-4fb0082d960d"
      unitRef="usd">20964000</us-gaap:DeferredRevenueCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjUtMS0xLTEtMA_e818e209-8251-40b2-8546-8c33938c005d"
      unitRef="usd">7557000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjUtMy0xLTEtMA_00145a6e-2f6a-491f-9d16-26064216e57d"
      unitRef="usd">6704000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjYtMS0xLTEtMA_92abd34d-f43b-4bc2-a759-d61cb24a31e0"
      unitRef="usd">146649000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjYtMy0xLTEtMA_c9c0bdb6-1a84-41c7-b76b-ff764d862f9b"
      unitRef="usd">154571000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjctMS0xLTEtMA_a0608404-1998-4985-ab83-1d3497ecfde8"
      unitRef="usd">22390000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjctMy0xLTEtMA_52920bcd-d971-47ff-8467-f96f8946af04"
      unitRef="usd">24978000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjgtMS0xLTEtMA_17877bd0-c86d-4d12-9c60-324eaffbac4d"
      unitRef="usd">4965000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjgtMy0xLTEtMA_bbec0a39-f4c1-459f-923f-f0f3307e6050"
      unitRef="usd">5346000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjktMS0xLTEtMA_0890352c-162c-45fd-a3ed-c10d1ab87107"
      unitRef="usd">33485000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMjktMy0xLTEtMA_b719d5e3-7ec4-4e7d-9f8f-ff8a48aea175"
      unitRef="usd">27996000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:DeferredCreditsAndOtherLiabilitiesNoncurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzAtMS0xLTEtMA_272be071-6d28-47c0-aa59-e553f7c5b4f2"
      unitRef="usd">6189000</us-gaap:DeferredCreditsAndOtherLiabilitiesNoncurrent>
    <us-gaap:DeferredCreditsAndOtherLiabilitiesNoncurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzAtMy0xLTEtMA_2feddd78-0f6b-4be3-8820-94bf5ebd761e"
      unitRef="usd">6242000</us-gaap:DeferredCreditsAndOtherLiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzEtMS0xLTEtMA_bc5d4fea-9d79-47d1-97b3-4ac35cd04eed"
      unitRef="usd">213678000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzEtMy0xLTEtMA_a6ce713e-c629-44f7-986c-4842e662e5b0"
      unitRef="usd">219133000</us-gaap:Liabilities>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzYtMC0xLTEtMC90ZXh0cmVnaW9uOmRmZTA2NzkxNmI5YjQ5NmJiNTUwYWE4OThjNTZlMzM4XzE4_8cb91948-feb8-438f-934c-8372850fff7d"
      unitRef="usdPerShare">0.001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzYtMC0xLTEtMC90ZXh0cmVnaW9uOmRmZTA2NzkxNmI5YjQ5NmJiNTUwYWE4OThjNTZlMzM4XzE4_cd2f63da-5128-4741-aae9-c7e76cc01cd1"
      unitRef="usdPerShare">0.001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzctMC0xLTEtMC90ZXh0cmVnaW9uOjNiY2Y3OWYwZTJiOTQ2YTZiNjhmN2M5ZDEyNzY3M2E1XzQ_01f7e28d-67d3-4622-81ec-610a3ff92e68"
      unitRef="shares">250000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzctMC0xLTEtMC90ZXh0cmVnaW9uOjNiY2Y3OWYwZTJiOTQ2YTZiNjhmN2M5ZDEyNzY3M2E1XzQ_25093f25-6c6c-4d94-9d6b-9763c397d871"
      unitRef="shares">250000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzctMC0xLTEtMC90ZXh0cmVnaW9uOjNiY2Y3OWYwZTJiOTQ2YTZiNjhmN2M5ZDEyNzY3M2E1XzI2_823e9e23-02db-45a6-baa0-2f0e94a66d1a"
      unitRef="shares">77758530</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzctMC0xLTEtMC90ZXh0cmVnaW9uOjNiY2Y3OWYwZTJiOTQ2YTZiNjhmN2M5ZDEyNzY3M2E1XzI2_ee73cd12-24a8-4d16-bbb6-39ee4a20a161"
      unitRef="shares">77758530</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzctMC0xLTEtMC90ZXh0cmVnaW9uOjNiY2Y3OWYwZTJiOTQ2YTZiNjhmN2M5ZDEyNzY3M2E1XzI3NDg3NzkwNjk1MDY_1b441ea6-1546-4a4a-b31c-66f1eb417e04"
      unitRef="shares">77437997</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzctMC0xLTEtMC90ZXh0cmVnaW9uOjNiY2Y3OWYwZTJiOTQ2YTZiNjhmN2M5ZDEyNzY3M2E1XzI3NDg3NzkwNjk1MDY_85079292-74f9-46a4-af75-a3837883ba7c"
      unitRef="shares">77437997</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzctMS0xLTEtMA_6cc597ef-f660-4cd0-a0cc-198b77f09171"
      unitRef="usd">78000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzctMy0xLTEtMA_bbd44cd2-30f4-4b1a-820c-47f52a095cdc"
      unitRef="usd">78000</us-gaap:CommonStockValue>
    <us-gaap:TreasuryStockShares
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzgtMC0xLTEtMzMzL3RleHRyZWdpb246ODRjYjVlYWEwZmM1NDllZjg5NTAwOWU3YjcxYTVhODhfMjc0ODc3OTA2OTQ5NA_168e2ff4-abfc-48f1-b9d8-3651999b7624"
      unitRef="shares">136402</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockShares
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzgtMC0xLTEtMzMzL3RleHRyZWdpb246ODRjYjVlYWEwZmM1NDllZjg5NTAwOWU3YjcxYTVhODhfMjc0ODc3OTA2OTQ5Nw_8e143d5b-1d79-48f9-af76-bed7d2b50edf"
      unitRef="shares">0</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockValue
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzgtMS0xLTEtMzIy_b40404b0-a1db-4bc0-9979-6540386f929d"
      unitRef="usd">5738000</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzgtMy0xLTEtMzIy_b5835316-56e4-4e36-84c1-ee7ce23aeb3e"
      unitRef="usd">0</us-gaap:TreasuryStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzgtMS0xLTEtMA_ec1a45ee-11b9-4a0f-abc7-fe435e62781a"
      unitRef="usd">915136000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzgtMy0xLTEtMA_83f5f40c-4fb0-488e-85c2-6676c3801f0c"
      unitRef="usd">903838000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzktMS0xLTEtMA_b328718a-b4f8-4af8-b5be-e1e0171d5b63"
      unitRef="usd">3150000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfMzktMy0xLTEtMA_44146720-6961-4524-a3a1-4f90e1bfefc4"
      unitRef="usd">5886000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNDAtMS0xLTEtMA_30a2c03f-6fe1-4603-a2d2-8d09450e9141"
      unitRef="usd">-146093000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNDAtMy0xLTEtMA_eb726e50-b4b2-40af-802b-52247f3aa5bb"
      unitRef="usd">-165718000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:StockholdersEquity
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNDEtMS0xLTEtMA_459ff675-6619-4a09-bd2c-be3d480d073a"
      unitRef="usd">766533000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNDEtMy0xLTEtMA_796a6480-9f06-4f99-a78e-cdf78b3214e0"
      unitRef="usd">744084000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNDItMS0xLTEtMA_ba4a31ff-4f46-473b-a378-efd0cfb82448"
      unitRef="usd">980211000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xNi9mcmFnOjlmN2MyNWE2NzgzMzQxOTQ5MmE4MTgzNGMzZjNlNGRiL3RhYmxlOjVlMzk3NDk3MDIxNzRjMGY5Zjk0Y2YwMDMxNzcyYTBmL3RhYmxlcmFuZ2U6NWUzOTc0OTcwMjE3NGMwZjlmOTRjZjAwMzE3NzJhMGZfNDItMy0xLTEtMA_38b67241-52ec-491c-85aa-2537e17019b5"
      unitRef="usd">963217000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMi0xLTEtMS0w_080010ff-0fa7-4387-a1c2-c986b9b5e425"
      unitRef="usd">186636000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMi0zLTEtMS0w_24fad1cd-01e7-44ed-a7a2-911ddc966aec"
      unitRef="usd">160753000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMy0xLTEtMS0w_3db99e8b-3c2f-43fc-bea3-abf03f1d6bc6"
      unitRef="usd">109930000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMy0zLTEtMS0w_553f44d1-1012-40d8-9b2b-0bf003a827f2"
      unitRef="usd">93363000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfNC0xLTEtMS0w_64bf3e70-2034-4476-b4f6-6700d5114b7f"
      unitRef="usd">76706000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfNC0zLTEtMS0w_a0c4b467-f8c1-4d74-9802-51e7a29334e8"
      unitRef="usd">67390000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfNi0xLTEtMS0w_71433a11-ad1a-4f31-90f4-f031a40cdd6b"
      unitRef="usd">24046000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfNi0zLTEtMS0w_fa41abe0-c0bd-426e-b5a6-f3a55648953a"
      unitRef="usd">21267000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfNy0xLTEtMS0w_cedb8ef3-8a95-4f20-9a54-400b789d556e"
      unitRef="usd">30015000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfNy0zLTEtMS0w_14e924e9-c84f-4c54-a514-9980a4156634"
      unitRef="usd">27693000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:OperatingExpenses
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfOC0xLTEtMS0w_a7876a3d-68fc-44de-b9b8-ce3139e51094"
      unitRef="usd">54061000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfOC0zLTEtMS0w_ea343111-3085-4d31-ad45-5f56c7ed7a75"
      unitRef="usd">48960000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfOS0xLTEtMS0w_8c2c0ea7-89d3-41f9-bcd4-40b47855d93d"
      unitRef="usd">22645000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfOS0zLTEtMS0w_db453aa3-5a1d-4933-8e25-32d10caf82cf"
      unitRef="usd">18430000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InvestmentIncomeInterest
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTAtMS0xLTEtMA_ef3146b4-4abd-498b-aaad-3fe703a21b0b"
      unitRef="usd">194000</us-gaap:InvestmentIncomeInterest>
    <us-gaap:InvestmentIncomeInterest
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTAtMy0xLTEtMA_11347d0f-420b-4994-b90f-c787e56b8686"
      unitRef="usd">685000</us-gaap:InvestmentIncomeInterest>
    <us-gaap:InterestExpense
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTEtMS0xLTEtMA_14ed03a4-b400-400a-8827-2d04970be1c1"
      unitRef="usd">180000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTEtMy0xLTEtMA_5ddd394e-3a81-462c-bbb1-4795f9b652fb"
      unitRef="usd">318000</us-gaap:InterestExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTItMS0xLTEtMA_6ac9d618-f051-45a8-8e8e-f9884e53b2cb"
      unitRef="usd">172000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTItMy0xLTEtMA_bdc1c78a-ee83-496a-b8cb-9a8f23ad185f"
      unitRef="usd">-91000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTMtMS0xLTEtMA_81a3adf8-585a-49ae-a0ae-45ace87d7c3c"
      unitRef="usd">22831000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTMtMy0xLTEtMA_91bd60fd-aa2c-4323-9cb9-1baa48573a9e"
      unitRef="usd">18706000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTQtMS0xLTEtMA_945504d5-9192-496e-ad2d-f5e6392de352"
      unitRef="usd">3206000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTQtMy0xLTEtMA_34ee6441-ee88-41c0-ba86-2387d60d3ff6"
      unitRef="usd">2816000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTUtMS0xLTEtMA_a21141af-7004-4c8e-ac4b-3777a7cb5fd7"
      unitRef="usd">19625000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTUtMy0xLTEtMA_43a9a5c6-e73f-4418-90e1-1f6fb3fcb2e4"
      unitRef="usd">15890000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTctMS0xLTEtMA_020cf99c-d5da-4207-a2f3-678808ada4da"
      unitRef="usdPerShare">0.25</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTctMy0xLTEtMA_b327640c-aee4-4576-87c4-c229c01588a3"
      unitRef="usdPerShare">0.21</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTgtMS0xLTEtMA_06cc9e1c-4f31-40c1-93cc-fc4fdcea82a4"
      unitRef="usdPerShare">0.25</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMTgtMy0xLTEtMA_30ef0317-d6b4-4c43-93a6-fdeda5cb0a0c"
      unitRef="usdPerShare">0.20</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMjAtMS0xLTEtMA_61e9d6fb-cb3e-4722-8204-8f12f4afcfe9"
      unitRef="shares">77598000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMjAtMy0xLTEtMA_2117586a-415b-417a-a03c-58292af85955"
      unitRef="shares">76005000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMjEtMS0xLTEtMA_23d0b44d-99b6-46e2-a393-59a33fe79308"
      unitRef="shares">79988000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8xOS9mcmFnOjI3NzYwYWI5Zjk2ODRlMTU5OTE0N2FhMTk4YzE5ZjhkL3RhYmxlOjBhOTEwMzIwMjk1MzQyY2ZiOTkzZmVhODM4MmU3MmJhL3RhYmxlcmFuZ2U6MGE5MTAzMjAyOTUzNDJjZmI5OTNmZWE4MzgyZTcyYmFfMjEtMy0xLTEtMA_79b5b66e-711e-4a39-8102-60281a61fe35"
      unitRef="shares">78510000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:NetIncomeLoss
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfMi0xLTEtMS0w_a21141af-7004-4c8e-ac4b-3777a7cb5fd7"
      unitRef="usd">19625000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfMi0zLTEtMS0w_43a9a5c6-e73f-4418-90e1-1f6fb3fcb2e4"
      unitRef="usd">15890000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfNC0xLTEtMS0w_f8a32e5e-13d6-44cf-89a6-1f634f8a8912"
      unitRef="usd">-2379000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfNC0zLTEtMS0w_69ea0250-37ff-4a82-a0c9-7a9e66a9c665"
      unitRef="usd">-399000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfNS0xLTEtMS0w_31498dce-5521-48b9-b1fd-980ca2e36cee"
      unitRef="usd">-131000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfNS0zLTEtMS0w_5c22bf4a-af12-4694-a5f7-6adf018b7372"
      unitRef="usd">-27000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfNi0xLTEtMS0w_2e2d70d9-0b86-4c77-b3d9-6c297fd24c07"
      unitRef="usd">-226000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfNi0zLTEtMS0w_5e4c0618-7ad3-4079-87f0-a85d3cf3af2f"
      unitRef="usd">176000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfNy0xLTEtMS0w_204e623d-529a-497c-87dc-afe2740a6d21"
      unitRef="usd">-2736000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfNy0zLTEtMS0w_e239872b-ea83-489d-a753-a5e4dfe8cff3"
      unitRef="usd">-250000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfOC0xLTEtMS0w_94526ee6-0f94-4eb9-b663-8c3665b6322c"
      unitRef="usd">16889000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yMi9mcmFnOmQ5MjM3MTk5OGIzNjRjOTY5ZWVlNGFjMjU4Y2NkZGE1L3RhYmxlOjc1ZjZiYzllOTY3MzRkYWFhZWUzYmU1Nzc4ZWQ1YTY1L3RhYmxlcmFuZ2U6NzVmNmJjOWU5NjczNGRhYWFlZTNiZTU3NzhlZDVhNjVfOC0zLTEtMS0w_d1724a12-db95-4842-aacd-b9c69a6c9dce"
      unitRef="usd">15640000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:SharesOutstanding
      contextRef="i6cae11157f05483aa2be0dea51aecf10_I20201226"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMi0xLTEtMS0w_73d25d31-f8ff-4232-b77c-6e6bed137e3e"
      unitRef="shares">77437997</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i6cae11157f05483aa2be0dea51aecf10_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMi0zLTEtMS0w_1138a9e3-b046-4111-88d0-e2ad8bd278b7"
      unitRef="usd">78000</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="ieb26fac254654bf7bca7afa960c2d3a8_I20201226"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMi01LTEtMS0xODk_7717c655-f51e-4111-ad34-447473967cfa"
      unitRef="shares">0</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="ieb26fac254654bf7bca7afa960c2d3a8_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMi03LTEtMS0xODk_80244c73-d097-4479-9677-e8067fac839d"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i0b15d00309954fbba558e9542f0721d2_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMi01LTEtMS0w_1cdb1fc9-f9e1-4373-8a0c-31a97d55765a"
      unitRef="usd">903838000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i04bb121199ae4cd69f50b4c605a1ff96_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMi03LTEtMS0w_3319d185-421c-4b2c-8ef4-ac0eecdec12d"
      unitRef="usd">5886000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i77e293278a644ee6b89b90c93275d810_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMi05LTEtMS0w_f2782d6c-9cf6-4ecb-ba1c-00eaa492ee7d"
      unitRef="usd">-165718000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMi0xMS0xLTEtMA_dc93dc98-5a5e-4cd9-8478-39546a8837ce"
      unitRef="usd">744084000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="i3f1bf6828a7940f4a13d6bb6704cf1eb_D20201227-20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMy0xLTEtMS0w_860ce49f-2cde-4045-b5b0-cf1a79054e4c"
      unitRef="shares">228784</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="i729f4638ab4e4511bd4ad2752c512e82_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMy01LTEtMS0w_ec2916a7-91ef-48bc-813b-5af69ff73012"
      unitRef="usd">5065000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMy0xMS0xLTEtMA_98d1ce4a-1c9f-41af-8f7f-ba113e27c66e"
      unitRef="usd">5065000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross
      contextRef="i3f1bf6828a7940f4a13d6bb6704cf1eb_D20201227-20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNC0xLTEtMS0w_4a1a51ec-1e7b-47c2-ad3b-9c123c3949a9"
      unitRef="shares">50000</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i3f1bf6828a7940f4a13d6bb6704cf1eb_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNC0zLTEtMS0w_1f77ec35-1a9c-4765-92b5-df6d6f309b33"
      unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i729f4638ab4e4511bd4ad2752c512e82_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNC01LTEtMS0w_eb2d7263-4dab-4db8-ac85-213055e95f7d"
      unitRef="usd">422000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNC0xMS0xLTEtMA_3159cbea-6ac3-4b00-9e2d-d26767271d23"
      unitRef="usd">422000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures
      contextRef="i3f1bf6828a7940f4a13d6bb6704cf1eb_D20201227-20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNS0xLTEtMS0w_7f3a3a84-f35d-4248-aa16-3f85bd659183"
      unitRef="shares">41749</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="i3f1bf6828a7940f4a13d6bb6704cf1eb_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNS0zLTEtMS0w_48084dfd-c25a-40a4-bb44-e1eb0664ff17"
      unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="i729f4638ab4e4511bd4ad2752c512e82_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNS01LTEtMS0w_9009227b-ee8f-422c-9e5a-10c214a4c969"
      unitRef="usd">-1141000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNS0xMS0xLTEtMA_37ad8621-1424-4cc6-a54f-ee51077428b9"
      unitRef="usd">-1141000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="i0d11788f365441038bf9e977162280c1_D20201227-20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNi01LTEtMS0xODk_f522424b-293a-4874-9886-9a6e03e217e9"
      unitRef="shares">136402</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="i0d11788f365441038bf9e977162280c1_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNi03LTEtMS0xODk_8b65f641-2b0f-4b7e-b736-e4d1d1fa6710"
      unitRef="usd">5738000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNi0xMS0xLTEtMA_81efff25-a048-4944-a879-cfd58f4dc2c4"
      unitRef="usd">5738000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i729f4638ab4e4511bd4ad2752c512e82_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNy01LTEtMS0w_a32be3da-b475-4bd1-8ad0-052bb4234cfa"
      unitRef="usd">6952000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfNy0xMS0xLTEtMA_d77aacb1-7f52-4482-8b38-3f3ae5ec7c8a"
      unitRef="usd">6952000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i13671f0a918f4bd48deb65cded0db074_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfOC03LTEtMS0w_4e319e9b-9862-4cbc-913f-142cc39a8837"
      unitRef="usd">-2736000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfOC0xMS0xLTEtMA_3b5c1005-f54b-48a6-a920-2f12b6c1f7e5"
      unitRef="usd">-2736000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:NetIncomeLoss
      contextRef="i2eec7d0dc66b47db97e1ad7db6a10e09_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfOS05LTEtMS0w_637ec828-d8ba-4343-a049-86545a659c63"
      unitRef="usd">19625000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfOS0xMS0xLTEtMA_b22f748d-2e0f-43ea-84f3-c38e8b89b93a"
      unitRef="usd">19625000</us-gaap:NetIncomeLoss>
    <us-gaap:SharesOutstanding
      contextRef="i6f3e2c8af2304eafbee443016913a3e8_I20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMTAtMS0xLTEtMA_d1d66f26-7f53-4847-8d75-99d0256d1bdd"
      unitRef="shares">77758530</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i6f3e2c8af2304eafbee443016913a3e8_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMTAtMy0xLTEtMA_9e039b04-5a55-48da-b8b6-1d76a2d08170"
      unitRef="usd">78000</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="i500f4312ae1c44caa47d6cdcc79ec327_I20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMTAtNS0xLTEtMTg5_9f20659f-cfc6-4d35-a05d-ccc1a0e89408"
      unitRef="shares">-136402</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i500f4312ae1c44caa47d6cdcc79ec327_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMTAtNy0xLTEtMTg5_727c1547-0534-45df-a9c7-a1ed89103be7"
      unitRef="usd">-5738000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia9682d64c1fc451998455e633eab2a10_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMTAtNS0xLTEtMA_fb4b7354-e650-418c-a2d6-39e0e1f98abf"
      unitRef="usd">915136000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i4e6d5f6ac11b46d9a74b777fbb336ea6_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMTAtNy0xLTEtMA_1871fead-8f4e-41db-8350-0d6995af2b0f"
      unitRef="usd">3150000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="if41d69e944ef45a4b44eec3d4a223fb2_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMTAtOS0xLTEtMA_b7dd52a9-b377-4736-8fe1-0efa9627bd03"
      unitRef="usd">-146093000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOjY1NTlkYTlmYmQzMjQyMjc4ODhlODk2NGExOGM1MDA3L3RhYmxlcmFuZ2U6NjU1OWRhOWZiZDMyNDIyNzg4OGU4OTY0YTE4YzUwMDdfMTAtMTEtMS0xLTA_31a7a970-74ae-468a-b420-7b88566939b8"
      unitRef="usd">766533000</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="ib7bad9174c7c49609d91e6d5c3dfc9ae_I20191228"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMi0xLTEtMS0w_977a01c6-c669-437f-a9d0-3a3e4c742155"
      unitRef="shares">75764990</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="ib7bad9174c7c49609d91e6d5c3dfc9ae_I20191228"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMi0zLTEtMS0w_f137743c-e899-4998-a6f7-3baf4d1fbe69"
      unitRef="usd">76000</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="i4c6143c1609c4ab2bce37d037f54c330_I20191228"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMi01LTEtMS0yNTE_4ca28076-bc9b-4061-a68a-0167a08be2a4"
      unitRef="shares">0</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i4c6143c1609c4ab2bce37d037f54c330_I20191228"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMi03LTEtMS0yNTE_ebdf116f-7a0b-4bb7-a4de-449ddf5c52dc"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="id8f458398d8c43e088d130df56016bb6_I20191228"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMi01LTEtMS0w_32d19352-f01e-44f6-a52a-7f6d4c06595d"
      unitRef="usd">885821000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i44627f1e70d34766a2dbe07b15fb6950_I20191228"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMi03LTEtMS0w_af01e050-5281-4ee0-b300-03970e841925"
      unitRef="usd">-659000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i7a3c798ab7664717ba65e058bdccb09a_I20191228"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMi05LTEtMS0w_b613637d-deb3-42ae-98b6-17aecabd53fc"
      unitRef="usd">-244241000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i1eeff05d49e94a6396339ea847351869_I20191228"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMi0xMS0xLTEtMA_4a024d79-c218-4a2c-9849-006a2dc78270"
      unitRef="usd">640997000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="ifb2d6dcf47c54abbb839c266c9cc4ee9_D20191229-20200328"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMy0xLTEtMS0w_57277038-046a-4f42-93e0-e2c0c8dddb45"
      unitRef="shares">311591</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="i8e0b808cf3604c4495edbf47e23dcbe3_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMy01LTEtMS0w_de84d9ec-2e87-499b-8ad8-195a7ce6b0a8"
      unitRef="usd">4066000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMy0xMS0xLTEtMA_0f058f7f-b941-4fe8-ac4c-36f07b051161"
      unitRef="usd">4066000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross
      contextRef="ifb2d6dcf47c54abbb839c266c9cc4ee9_D20191229-20200328"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNC0xLTEtMS0w_b1019b7f-bd03-47c4-ae89-9ec43286533e"
      unitRef="shares">55769</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="ifb2d6dcf47c54abbb839c266c9cc4ee9_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNC0zLTEtMS0w_542c09d7-3e76-48ff-94ef-ccf4d9f32501"
      unitRef="usd">1000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i8e0b808cf3604c4495edbf47e23dcbe3_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNC01LTEtMS0w_7d57cd15-2b51-43a7-8dec-4846e31fe916"
      unitRef="usd">446000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNC0xMS0xLTEtMA_79270c0d-f6ac-424e-b0e8-f9c99a52d2de"
      unitRef="usd">447000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures
      contextRef="ifb2d6dcf47c54abbb839c266c9cc4ee9_D20191229-20200328"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNS0xLTEtMS0w_eba0aa61-32ac-45da-a07c-77614baaebd1"
      unitRef="shares">25901</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="ifb2d6dcf47c54abbb839c266c9cc4ee9_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNS0zLTEtMS0w_662db7a1-d859-4270-aed0-b4273db28d52"
      unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="i8e0b808cf3604c4495edbf47e23dcbe3_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNS01LTEtMS0w_8948a42d-2ffb-4a3c-9c8a-0e1dd7270dd8"
      unitRef="usd">-385000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNS0xMS0xLTEtMA_c71117f5-5c5e-4541-b79c-2776fa9999c7"
      unitRef="usd">-385000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i8e0b808cf3604c4495edbf47e23dcbe3_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNy01LTEtMS0w_d8eb3902-cdfd-4e1b-960e-2c8a6eee69e7"
      unitRef="usd">5652000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfNy0xMS0xLTEtMA_2fe2126d-0a2b-4384-9be6-da7618b74aa4"
      unitRef="usd">5652000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="i18a16832376f439cb95baeee9a407ce6_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfOS03LTEtMS0w_f7d337b9-32e3-4481-909e-19a3a433b5f8"
      unitRef="usd">-250000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfOS0xMS0xLTEtMA_6537a6c5-e827-4f54-8346-452ec40c2c59"
      unitRef="usd">-250000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:NetIncomeLoss
      contextRef="i011a585811394934834767c1c02a574f_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTAtOS0xLTEtMA_e8ca4bd7-dbb8-45f5-ba07-f6e30a84f07c"
      unitRef="usd">15890000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTAtMTEtMS0xLTA_9930721d-0460-444c-9587-95fcb3279de6"
      unitRef="usd">15890000</us-gaap:NetIncomeLoss>
    <us-gaap:SharesOutstanding
      contextRef="i1aa740cb5cdb42f0823f14129a3efe75_I20200328"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTEtMS0xLTEtMA_fca89325-05cb-4297-80a4-b66a6064ddab"
      unitRef="shares">76158251</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i1aa740cb5cdb42f0823f14129a3efe75_I20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTEtMy0xLTEtMA_08c9114d-3956-4d12-97c1-04669e3544a2"
      unitRef="usd">77000</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="iedf25ec0f0c343d28e43f56ad6d7296d_I20200328"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTAtNS0xLTEtMjUx_34918396-639f-4942-854f-1b7c7775403a"
      unitRef="shares">0</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="iedf25ec0f0c343d28e43f56ad6d7296d_I20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTAtNy0xLTEtMjUx_7d639a53-868a-46fc-b43e-701665d7d025"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i3b762e4947834ca39c189d5d1b398f14_I20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTEtNS0xLTEtMA_7bea8476-fdee-4cd8-b3b4-d43bfdee518b"
      unitRef="usd">895600000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="if7864453957e45bd925c6dd5aef3d902_I20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTEtNy0xLTEtMA_4bcbe852-2e2e-45bc-9caa-f4e2b0e06480"
      unitRef="usd">-909000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i594991f9cbb0403284090c5271d3ab3c_I20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTEtOS0xLTEtMA_89a2517f-a750-4cc2-bc31-ca0ceb898e03"
      unitRef="usd">-228351000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i544b840724324a999b22494d0651898a_I20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yNS9mcmFnOjU4YjBlYjc3YTI0NTQ5OTRhYWE0MzJlNTU3MjUyMGFmL3RhYmxlOmI0NGJhYTgzYmIxZjQ5NGViODg3NGY1ZWIzM2FlMTgyL3RhYmxlcmFuZ2U6YjQ0YmFhODNiYjFmNDk0ZWI4ODc0ZjVlYjMzYWUxODJfMTEtMTEtMS0xLTA_2c8db678-3759-4ebc-93a6-6d7ce493d063"
      unitRef="usd">666417000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMy0xLTEtMS0w_52c263ef-595c-417d-a78a-fe4097c21d31"
      unitRef="usd">19625000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMy0zLTEtMS0w_d955450f-bdcc-42cd-8567-6dab7993cb17"
      unitRef="usd">15890000</us-gaap:NetIncomeLoss>
    <us-gaap:Depreciation
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNS0xLTEtMS0w_f51b057b-dd92-4e63-b5dd-f3e7bef4ede1"
      unitRef="usd">6130000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNS0zLTEtMS0w_fc388960-aef2-40ac-9208-8577ba0f39c2"
      unitRef="usd">4561000</us-gaap:Depreciation>
    <us-gaap:CostOfGoodsAndServicesSoldAmortization
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNi0xLTEtMS0w_ee85601a-039b-4018-9338-6a5b66705e20"
      unitRef="usd">6805000</us-gaap:CostOfGoodsAndServicesSoldAmortization>
    <us-gaap:CostOfGoodsAndServicesSoldAmortization
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNi0zLTEtMS0w_c91440ef-1236-4c16-9381-98b9ba7cb64f"
      unitRef="usd">7263000</us-gaap:CostOfGoodsAndServicesSoldAmortization>
    <form:OperatingLeaseRightOfUseAssetAmortization
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfOC0xLTEtMS0w_0113474d-1749-4c2e-a0a9-790220eab271"
      unitRef="usd">1811000</form:OperatingLeaseRightOfUseAssetAmortization>
    <form:OperatingLeaseRightOfUseAssetAmortization
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfOC0zLTEtMS0w_23f8af2d-37e6-4c73-b8bd-33ce52e0b34f"
      unitRef="usd">1511000</form:OperatingLeaseRightOfUseAssetAmortization>
    <us-gaap:ShareBasedCompensation
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMTAtMS0xLTEtMA_e1bb8aff-889a-419d-b631-48a3aee0fea7"
      unitRef="usd">7077000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMTAtMy0xLTEtMA_27a39913-595d-458a-ba98-ccf5b50331a7"
      unitRef="usd">5623000</us-gaap:ShareBasedCompensation>
    <us-gaap:InventoryWriteDown
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMTMtMS0xLTEtMA_a9cc87e6-6ed4-4cc7-8a30-caad7098ce0f"
      unitRef="usd">3394000</us-gaap:InventoryWriteDown>
    <us-gaap:InventoryWriteDown
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMTMtMy0xLTEtMA_338c0a7c-1f54-4f99-a09d-7ab8e5bdbd4b"
      unitRef="usd">3287000</us-gaap:InventoryWriteDown>
    <us-gaap:OtherOperatingActivitiesCashFlowStatement
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMTktMS0xLTEtMA_4041008e-9df6-4a15-a600-94505442c80d"
      unitRef="usd">2140000</us-gaap:OtherOperatingActivitiesCashFlowStatement>
    <us-gaap:OtherOperatingActivitiesCashFlowStatement
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMTktMy0xLTEtMA_5a40d218-ea39-44cf-ac89-1f2135acbbc7"
      unitRef="usd">407000</us-gaap:OtherOperatingActivitiesCashFlowStatement>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjEtMS0xLTEtMA_0d3a5943-fb28-4c5c-89ae-43cc373b42a3"
      unitRef="usd">-3576000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjEtMy0xLTEtMA_c2cf4918-5b0c-4c9e-8002-417fdcded7c4"
      unitRef="usd">-7803000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjItMS0xLTEtMA_9c905f76-27ad-4d19-8aae-d55d2f5c97a5"
      unitRef="usd">9911000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjItMy0xLTEtMA_4b64f0a3-4cdc-4810-bdfc-ca7132e380e7"
      unitRef="usd">-928000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjMtMS0xLTEtMA_8326b9a2-8160-46f2-add3-dd774d05e1bb"
      unitRef="usd">-3011000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjMtMy0xLTEtMA_896a1cd9-09d0-4735-bb0a-c4f61405d2c0"
      unitRef="usd">240000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjUtMS0xLTEtMA_05f7e59b-b420-4079-8ecf-eb3fde9188a3"
      unitRef="usd">50000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjUtMy0xLTEtMA_a801375c-e139-48cd-8776-894e67854451"
      unitRef="usd">-194000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjYtMS0xLTEtMA_fb3d34cb-41d9-427f-8fc7-5c9603e95956"
      unitRef="usd">5722000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjYtMy0xLTEtMA_977bb06e-eb79-4e83-b833-5c42309f86fb"
      unitRef="usd">763000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjctMS0xLTEtMA_eccf86d8-967a-47f1-8ae6-463f741d4e7c"
      unitRef="usd">-12732000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjctMy0xLTEtMA_81ad57f5-2d2e-46b0-808e-2a6d1fcf211f"
      unitRef="usd">-6970000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherDeferredLiability
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjktMS0xLTEtMA_26671b16-6dce-4ac6-bceb-8a311269ff7b"
      unitRef="usd">114000</us-gaap:IncreaseDecreaseInOtherDeferredLiability>
    <us-gaap:IncreaseDecreaseInOtherDeferredLiability
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMjktMy0xLTEtMA_6e0607fe-39ef-4289-a1bb-f75c0906a13b"
      unitRef="usd">33000</us-gaap:IncreaseDecreaseInOtherDeferredLiability>
    <us-gaap:IncreaseDecreaseInDeferredRevenue
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzAtMS0xLTEtMA_c2925545-9872-4098-ac3e-fde011793356"
      unitRef="usd">-2411000</us-gaap:IncreaseDecreaseInDeferredRevenue>
    <us-gaap:IncreaseDecreaseInDeferredRevenue
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzAtMy0xLTEtMA_37145f17-7fb0-441f-954c-6e2efed3d971"
      unitRef="usd">-123000</us-gaap:IncreaseDecreaseInDeferredRevenue>
    <us-gaap:OperatingLeasePayments
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzEtMS0xLTEtMA_67535a81-7e63-4bb9-8e2a-2e6ab7852c39"
      unitRef="usd">1945000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzEtMy0xLTEtMA_ee882652-ea90-4cd3-8791-56b860c8ada5"
      unitRef="usd">1591000</us-gaap:OperatingLeasePayments>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzMtMS0xLTEtMA_43a7f36d-b7bf-41c8-9ebf-56404c1f252f"
      unitRef="usd">32356000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzMtMy0xLTEtMA_fedd67eb-abbf-43d9-9e04-b107a17ed406"
      unitRef="usd">39339000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzUtMS0xLTEtMA_593a2bea-eb79-4e94-88f7-b736a8c58c74"
      unitRef="usd">13470000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzUtMy0xLTEtMA_6cbfce76-d71c-4cb3-b40e-a281a6937f0b"
      unitRef="usd">12050000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzctMS0xLTEtMA_f4eecda2-773a-4515-a3a2-634c027301a0"
      unitRef="usd">0</us-gaap:ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates>
    <us-gaap:ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzctMy0xLTEtMA_9594a1f4-6b8f-444e-a8b2-20b1447564e5"
      unitRef="usd">40000</us-gaap:ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates>
    <us-gaap:PaymentsToAcquireMarketableSecurities
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzktMS0xLTEtMA_fbd8ccd8-94d7-4fca-8935-a0acdb032507"
      unitRef="usd">41062000</us-gaap:PaymentsToAcquireMarketableSecurities>
    <us-gaap:PaymentsToAcquireMarketableSecurities
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfMzktMy0xLTEtMA_e8f2fa7c-ca71-4c09-baf9-490208a8c782"
      unitRef="usd">16441000</us-gaap:PaymentsToAcquireMarketableSecurities>
    <us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDAtMS0xLTEtMA_75544b09-e957-4721-8334-63cd106a2eca"
      unitRef="usd">14610000</us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities>
    <us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDAtMy0xLTEtMA_3c502677-e1cd-4ff0-a412-5354c18058a0"
      unitRef="usd">23009000</us-gaap:ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDItMS0xLTEtMA_ff18c60a-e54b-404f-9b08-da24bdae286a"
      unitRef="usd">-39922000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDItMy0xLTEtMA_5193d706-fd33-4b2c-ab7c-9530b9307ed8"
      unitRef="usd">-5442000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDQtMS0xLTEtMA_a19be761-a5b0-4f64-8b46-b2915632286f"
      unitRef="usd">5487000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDQtMy0xLTEtMA_2697edc8-ef16-4b79-ba9c-0b77d8971238"
      unitRef="usd">4513000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDUtMS0xLTEtMA_d1513d19-b53b-4c79-a670-f43d5e7c4dc8"
      unitRef="usd">5738000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDUtMy0xLTEtMA_8b2bf129-a44e-4b08-ae10-9d2b42bf832e"
      unitRef="usd">0</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDYtMS0xLTEtMA_5301e64e-0a09-4448-9e72-fe6ce597c75a"
      unitRef="usd">1141000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDYtMy0xLTEtMA_2aede426-3c19-41d6-a8c5-a8dfffeeddef"
      unitRef="usd">385000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDgtMS0xLTEtMA_7f497c50-f134-4063-905c-fa586b21b166"
      unitRef="usd">2376000</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNDgtMy0xLTEtMA_9dc35c07-9701-4a59-86e5-4337614d1c40"
      unitRef="usd">13199000</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTAtMS0xLTEtMA_f5f7965f-a5d2-4538-9fef-1fa3d32c5090"
      unitRef="usd">-3768000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTAtMy0xLTEtMA_9c61ea46-4f37-4784-b14b-927cd31e875c"
      unitRef="usd">-9071000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTEtMS0xLTEtMA_974ea12d-0bd7-450a-ad6b-216d134608b4"
      unitRef="usd">-1456000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTEtMy0xLTEtMA_c0658f7b-3392-441b-90a8-4b17332dbf17"
      unitRef="usd">312000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTItMS0xLTEtMA_a12485d2-d584-4374-8b72-ea0972e1db3b"
      unitRef="usd">-12790000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTItMy0xLTEtMA_1b5fa8de-750c-4795-aa40-052f202e1cab"
      unitRef="usd">25138000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTMtMS0xLTEtMA_c55b6715-bf1a-4a7c-a0eb-bdb6e33eeb9c"
      unitRef="usd">191098000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i1eeff05d49e94a6396339ea847351869_I20191228"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTMtMy0xLTEtMA_ae6e67a1-5a2f-487b-a515-a4e34c08f26f"
      unitRef="usd">147937000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTQtMS0xLTEtMA_23774925-ddad-45a3-8ec8-282388993f21"
      unitRef="usd">178308000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i544b840724324a999b22494d0651898a_I20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmIwOWY4YzMwZTMxOTRmMTA5ODE1MGFhMTM4NjFhMjU1L3RhYmxlcmFuZ2U6YjA5ZjhjMzBlMzE5NGYxMDk4MTUwYWExMzg2MWEyNTVfNTQtMy0xLTEtMA_cded9681-0224-460a-87a6-b36d6d64f32a"
      unitRef="usd">173075000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <form:ChangeInCapitalExpendituresIncurredButNotYetPaid
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfNC0xLTEtMS0yMjky_b8f2977f-da5d-4dcc-be31-694d0077a08f"
      unitRef="usd">1087000</form:ChangeInCapitalExpendituresIncurredButNotYetPaid>
    <form:ChangeInCapitalExpendituresIncurredButNotYetPaid
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfNC0zLTEtMS0yMjky_664a503c-ebf0-47db-847c-90a08221c053"
      unitRef="usd">-2116000</form:ChangeInCapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfNS0xLTEtMS0yMjky_8746ee12-e69b-4028-a149-e8f8bc5dc39e"
      unitRef="usd">8572000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfNS0zLTEtMS0yMjky_599b01c4-c0d5-487c-95d7-02871b830038"
      unitRef="usd">6307000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfNy0xLTEtMS0yMjg5_be88a643-7d5c-42f6-8d79-ad10eef28b10"
      unitRef="usd">1034000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfNy0zLTEtMS0yMjg5_1fa894ec-2002-482d-aa68-52c544c5973f"
      unitRef="usd">2419000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfOC0xLTEtMS0yMjg5_68e7e613-9b52-45dc-bae0-66966287ea1f"
      unitRef="usd">173000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfOC0zLTEtMS0yMjg5_b84bb850-d4c1-438a-888c-daa663063e71"
      unitRef="usd">291000</us-gaap:InterestPaidNet>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfMTAtMS0xLTEtMjI4Ng_9b2a4ea1-4d81-440e-a21f-3f75d2099d0f"
      unitRef="usd">173616000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i544b840724324a999b22494d0651898a_I20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfMTAtMy0xLTEtMjI4Ng_ad292a8c-e6e4-4944-832d-61e9b6715ba0"
      unitRef="usd">169607000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:RestrictedCashCurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfMTEtMS0xLTEtMjI4Ng_48ada894-e37d-467c-aa30-2788387c2861"
      unitRef="usd">2798000</us-gaap:RestrictedCashCurrent>
    <us-gaap:RestrictedCashCurrent
      contextRef="i544b840724324a999b22494d0651898a_I20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfMTEtMy0xLTEtMjI4Ng_a5919f88-f2ef-49b5-ae6b-d5426beaef55"
      unitRef="usd">2107000</us-gaap:RestrictedCashCurrent>
    <us-gaap:RestrictedCashNoncurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfMTItMS0xLTEtMjI4Ng_fda00b66-c43c-409d-a6da-367c71026b92"
      unitRef="usd">1894000</us-gaap:RestrictedCashNoncurrent>
    <us-gaap:RestrictedCashNoncurrent
      contextRef="i544b840724324a999b22494d0651898a_I20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfMTItMy0xLTEtMjI4Ng_98461ad4-4098-4dee-bf78-3d43a1159152"
      unitRef="usd">1361000</us-gaap:RestrictedCashNoncurrent>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfMTMtMS0xLTEtMjI4Ng_65c61198-bf40-435b-b11c-063e15d3a89c"
      unitRef="usd">178308000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i544b840724324a999b22494d0651898a_I20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8yOC9mcmFnOjZmMjBiZDA5N2VjMjRiZTA4MGY3NTU3YzUzYmMxYTEyL3RhYmxlOmUzMmQxZjA4YzEyYjQwODNhYzI1OGFjYmU1MjEwNjgyL3RhYmxlcmFuZ2U6ZTMyZDFmMDhjMTJiNDA4M2FjMjU4YWNiZTUyMTA2ODJfMTMtMy0xLTEtMjI4Ng_4b5a30f2-c4b1-41ea-a25c-90628316f71c"
      unitRef="usd">173075000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNC9mcmFnOjA4MzRiNjFhMzU0ZTQ4ZTA5ZmU2MDg2OWU2OTJkZjBhL3RleHRyZWdpb246MDgzNGI2MWEzNTRlNDhlMDlmZTYwODY5ZTY5MmRmMGFfNTc5OA_c27a77ca-ef8d-4c30-ae2a-bc4edb7e7ac1">Basis of Presentation and New Accounting Pronouncements&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Basis of Presentation&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The accompanying condensed consolidated financial information of FormFactor,&#160;Inc. is unaudited and has been prepared in accordance with accounting principles generally accepted in the United States of America (&#x201c;GAAP&#x201d;) and pursuant to the rules and regulations of the Securities and Exchange Commission (&#x201c;SEC&#x201d;). However, such information reflects all adjustments, consisting only of normal recurring adjustments, which are, in the opinion of management, necessary for a fair presentation of the financial position, results of operations and cash flows for the interim periods. The condensed consolidated financial statements included herein should be read in conjunction with the consolidated financial statements and the notes thereto included in our 2020 Annual Report on Form 10-K filed with the SEC on February 22, 2021. The results of operations for the interim periods presented are not necessarily indicative of the results to be expected for the full year. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Fiscal Year&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We operate on a 52/53 week fiscal year, whereby the fiscal year ends on the last Saturday of December. Fiscal 2021 and 2020 each contain 52 weeks and the three months ended March&#160;27, 2021 and March&#160;28, 2020 each contained 13 weeks. Fiscal 2021 will end on December&#160;25, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Significant Accounting Policies&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our significant accounting policies have not changed during the three months ended March&#160;27, 2021 from those disclosed in our Annual Report on Form&#160;10-K for the year ended December&#160;26, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Reclassifications&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Certain immaterial reclassifications were made to the prior year financial statements to conform to the current year presentation.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;New Accounting Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;ASU 2019-12&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;In December 2019, the Financial Accounting Standard Board (&#x201c;FASB&#x201d;) issued Accounting Standards Update (&#x201c;ASU&#x201d;) 2019-12, &#x201c;Income Taxes (Topic 740),&#x201d; which simplifies the accounting for income taxes by removing certain exceptions to the general principles in Topic 740. The amendments also improve consistent application of and simplify GAAP for other areas of Topic 740 by clarifying and amending existing guidance. This guidance is effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2020. We adopted ASU 2019-12 on a prospective basis on December 27, 2020, the first day of fiscal 2021. The adoption did not have a material effect on our consolidated financial position, results of operations or cash flows. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;ASU 2020-04&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;In March 2020, the FASB issued ASU 2020-04, &#x201c;Referenced Rate Reform (Topic 848) - Facilitation of the Effects of Reference Rate Reform on Financial Reporting.&#x201d; The ASU provides temporary optional expedients and exceptions for applying generally accepted accounting principles to contract modifications and hedging relationships, subject to meeting certain criteria, that reference the London Interbank Offered Rate (&#x201c;LIBOR&#x201d;) or another reference rate expected to be discontinued. In January 2021, the FASB issued ASU 2021-01, &#x201c;Reference Rate Reform (Topic 848),&#x201d; which permits entities to apply optional expedients in Topic 848 to derivative instruments modified because of discounting transition resulting from reference rate reform. ASU 2020-04 became effective upon issuance and may be applied prospectively to contract modifications made on or before December 31, 2022. ASU 2021-01 became effective upon issuance and may be applied on a full retrospective basis as of any date from the beginning of an interim period that includes or is subsequent to March 12, 2020 or prospectively for contract modifications made on or before December 31, 2022. The Company has not yet applied the relief afforded by these standard amendments and is currently assessing contracts that will require modification due to reference rate reform to which these standard amendments may be applied.&lt;/span&gt;&lt;/div&gt;</us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNC9mcmFnOjA4MzRiNjFhMzU0ZTQ4ZTA5ZmU2MDg2OWU2OTJkZjBhL3RleHRyZWdpb246MDgzNGI2MWEzNTRlNDhlMDlmZTYwODY5ZTY5MmRmMGFfNTc5MA_f38860ae-c5cd-4ce8-a68d-22f4b989fcb0">Basis of PresentationThe accompanying condensed consolidated financial information of FormFactor,&#160;Inc. is unaudited and has been prepared in accordance with accounting principles generally accepted in the United States of America (&#x201c;GAAP&#x201d;) and pursuant to the rules and regulations of the Securities and Exchange Commission (&#x201c;SEC&#x201d;). However, such information reflects all adjustments, consisting only of normal recurring adjustments, which are, in the opinion of management, necessary for a fair presentation of the financial position, results of operations and cash flows for the interim periods. The condensed consolidated financial statements included herein should be read in conjunction with the consolidated financial statements and the notes thereto included in our 2020 Annual Report on Form 10-K filed with the SEC on February 22, 2021. The results of operations for the interim periods presented are not necessarily indicative of the results to be expected for the full year.</us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:FiscalPeriod
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNC9mcmFnOjA4MzRiNjFhMzU0ZTQ4ZTA5ZmU2MDg2OWU2OTJkZjBhL3RleHRyZWdpb246MDgzNGI2MWEzNTRlNDhlMDlmZTYwODY5ZTY5MmRmMGFfNTgwMg_35b1e5e7-8a94-4cec-bb8d-49aaa9a3a49c">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Fiscal Year&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We operate on a 52/53 week fiscal year, whereby the fiscal year ends on the last Saturday of December. Fiscal 2021 and 2020 each contain 52 weeks and the three months ended March&#160;27, 2021 and March&#160;28, 2020 each contained 13 weeks. Fiscal 2021 will end on December&#160;25, 2021.&lt;/span&gt;&lt;/div&gt;</us-gaap:FiscalPeriod>
    <us-gaap:PriorPeriodReclassificationAdjustmentDescription
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNC9mcmFnOjA4MzRiNjFhMzU0ZTQ4ZTA5ZmU2MDg2OWU2OTJkZjBhL3RleHRyZWdpb246MDgzNGI2MWEzNTRlNDhlMDlmZTYwODY5ZTY5MmRmMGFfNTQ5NzU1ODE0NDY5Mw_28f9850d-0d1c-46ec-a0cc-cd6b3b963d61">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Reclassifications&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Certain immaterial reclassifications were made to the prior year financial statements to conform to the current year presentation.&lt;/span&gt;&lt;/div&gt;</us-gaap:PriorPeriodReclassificationAdjustmentDescription>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNC9mcmFnOjA4MzRiNjFhMzU0ZTQ4ZTA5ZmU2MDg2OWU2OTJkZjBhL3RleHRyZWdpb246MDgzNGI2MWEzNTRlNDhlMDlmZTYwODY5ZTY5MmRmMGFfNTc5MQ_f010dcf0-3f94-438e-aaa5-7596fc0a72fd">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;New Accounting Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;ASU 2019-12&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;In December 2019, the Financial Accounting Standard Board (&#x201c;FASB&#x201d;) issued Accounting Standards Update (&#x201c;ASU&#x201d;) 2019-12, &#x201c;Income Taxes (Topic 740),&#x201d; which simplifies the accounting for income taxes by removing certain exceptions to the general principles in Topic 740. The amendments also improve consistent application of and simplify GAAP for other areas of Topic 740 by clarifying and amending existing guidance. This guidance is effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2020. We adopted ASU 2019-12 on a prospective basis on December 27, 2020, the first day of fiscal 2021. The adoption did not have a material effect on our consolidated financial position, results of operations or cash flows. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;ASU 2020-04&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;In March 2020, the FASB issued ASU 2020-04, &#x201c;Referenced Rate Reform (Topic 848) - Facilitation of the Effects of Reference Rate Reform on Financial Reporting.&#x201d; The ASU provides temporary optional expedients and exceptions for applying generally accepted accounting principles to contract modifications and hedging relationships, subject to meeting certain criteria, that reference the London Interbank Offered Rate (&#x201c;LIBOR&#x201d;) or another reference rate expected to be discontinued. In January 2021, the FASB issued ASU 2021-01, &#x201c;Reference Rate Reform (Topic 848),&#x201d; which permits entities to apply optional expedients in Topic 848 to derivative instruments modified because of discounting transition resulting from reference rate reform. ASU 2020-04 became effective upon issuance and may be applied prospectively to contract modifications made on or before December 31, 2022. ASU 2021-01 became effective upon issuance and may be applied on a full retrospective basis as of any date from the beginning of an interim period that includes or is subsequent to March 12, 2020 or prospectively for contract modifications made on or before December 31, 2022. The Company has not yet applied the relief afforded by these standard amendments and is currently assessing contracts that will require modification due to reference rate reform to which these standard amendments may be applied.&lt;/span&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:ConcentrationRiskDisclosureTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RleHRyZWdpb246NWJhNGMwZjUzZTlhNDU5NzgxYWQxODcxZTRmNjdhMTVfMzg5_593b4bca-2ee0-4637-a03b-0b73a082fb26">Concentration of Credit and Other Risks&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Each of the following customers accounted for 10% or more of our revenues for the periods indicated: &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 28,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Intel Corporation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;36.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Taiwan Semiconductor Manufacturing Co., LTD.&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;*&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;39.6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;36.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:4pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;*Represents less than 10% of total revenues.&lt;/span&gt;&lt;/div&gt;At March&#160;27, 2021, one customer accounted for 22.8% of gross accounts receivable. At December&#160;26, 2020, two customers accounted for 15.3% and 13.7% of gross accounts receivable, respectively.</us-gaap:ConcentrationRiskDisclosureTextBlock>
    <us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RleHRyZWdpb246NWJhNGMwZjUzZTlhNDU5NzgxYWQxODcxZTRmNjdhMTVfMzky_ba287249-dd25-40d1-96eb-8141868afda3">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Each of the following customers accounted for 10% or more of our revenues for the periods indicated: &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 28,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Intel Corporation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;36.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Taiwan Semiconductor Manufacturing Co., LTD.&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;*&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;39.6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;36.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:4pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;*Represents less than 10% of total revenues.&lt;/span&gt;&lt;/div&gt;</us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i9feef629422b43d1a34d669ca728b358_D20201227-20210327"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RhYmxlOjQzNzNiZmU4YTljZTQzZWE4OGY5MjQxMWY1NTBkZTFkL3RhYmxlcmFuZ2U6NDM3M2JmZThhOWNlNDNlYTg4ZjkyNDExZjU1MGRlMWRfMi0xLTEtMS0w_6522b16a-231a-4be9-8c7d-1c086648f57b"
      unitRef="number">0.281</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i0db017a702d741ec90758394f990256c_D20191229-20200328"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RhYmxlOjQzNzNiZmU4YTljZTQzZWE4OGY5MjQxMWY1NTBkZTFkL3RhYmxlcmFuZ2U6NDM3M2JmZThhOWNlNDNlYTg4ZjkyNDExZjU1MGRlMWRfMi0zLTEtMS0w_5854ca14-dbb7-41a9-8f0b-0d9e2cfe8058"
      unitRef="number">0.362</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="id7cd3ffae18748e8a7b7c82d53cda841_D20201227-20210327"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RhYmxlOjQzNzNiZmU4YTljZTQzZWE4OGY5MjQxMWY1NTBkZTFkL3RhYmxlcmFuZ2U6NDM3M2JmZThhOWNlNDNlYTg4ZjkyNDExZjU1MGRlMWRfMy0xLTEtMS0w_fd69b6b9-2db4-44be-9b2d-62ef241ff9ab"
      unitRef="number">0.115</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i92fb9c092984474caaff0d4eb06e6da1_D20201227-20210327"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RhYmxlOjQzNzNiZmU4YTljZTQzZWE4OGY5MjQxMWY1NTBkZTFkL3RhYmxlcmFuZ2U6NDM3M2JmZThhOWNlNDNlYTg4ZjkyNDExZjU1MGRlMWRfNy0xLTEtMS0w_c426fbb9-86b0-4d9c-9672-9eccbe415fa9"
      unitRef="number">0.396</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i048871285eab482f8256c3c11121fb6d_D20191229-20200328"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RhYmxlOjQzNzNiZmU4YTljZTQzZWE4OGY5MjQxMWY1NTBkZTFkL3RhYmxlcmFuZ2U6NDM3M2JmZThhOWNlNDNlYTg4ZjkyNDExZjU1MGRlMWRfNy0zLTEtMS0w_ed0e7f59-a81e-49bf-922c-9de9a0675d41"
      unitRef="number">0.362</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="idf8294fdf189489284ad6181584d738a_D20201227-20210327"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RleHRyZWdpb246NWJhNGMwZjUzZTlhNDU5NzgxYWQxODcxZTRmNjdhMTVfMjM4_b650ced6-86f6-4ba6-96b0-328c79b58d42"
      unitRef="number">0.228</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i2b0d72da70f64e2baa56826b9993d786_D20191229-20201226"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RleHRyZWdpb246NWJhNGMwZjUzZTlhNDU5NzgxYWQxODcxZTRmNjdhMTVfMzI2_5839166e-94f7-4204-9c8e-e78de8958b93"
      unitRef="number">0.153</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ib5f0fa9fa6e546b4b723ae9c7eb7d887_D20191229-20201226"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV8zNy9mcmFnOjViYTRjMGY1M2U5YTQ1OTc4MWFkMTg3MWU0ZjY3YTE1L3RleHRyZWdpb246NWJhNGMwZjUzZTlhNDU5NzgxYWQxODcxZTRmNjdhMTVfMzMw_e436024a-6d70-4d49-b956-918422b47989"
      unitRef="number">0.137</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:InventoryDisclosureTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RleHRyZWdpb246YzljY2JmZjQ5YTU4NGQ3M2ExNjQ4ZjU2OGZhMjM3ZjJfMjYy_8e7b9d29-9389-4c0d-94ec-bce9d82c00f7">Inventories, net &lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventories are stated at the lower of cost (principally standard cost, which approximates actual cost on a first in, first out basis) or net realizable value.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventories, net, consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 26,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Raw materials&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;52,320&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;48,122&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Work-in-progress&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;35,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30,806&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Finished goods&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16,941&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;20,301&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;104,727&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;99,229&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RleHRyZWdpb246YzljY2JmZjQ5YTU4NGQ3M2ExNjQ4ZjU2OGZhMjM3ZjJfMjU5_67d04616-c110-4128-ba0a-12d4b3abd279">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventories, net, consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 26,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Raw materials&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;52,320&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;48,122&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Work-in-progress&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;35,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30,806&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Finished goods&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16,941&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;20,301&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;104,727&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;99,229&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RhYmxlOjJhZjNkZDQwMjNlMTRjMGI4ZTIxZjdiZDZmOWZmYWJkL3RhYmxlcmFuZ2U6MmFmM2RkNDAyM2UxNGMwYjhlMjFmN2JkNmY5ZmZhYmRfMS0xLTEtMS0w_81f3c82f-dad8-48c8-b8c6-40c98302a016"
      unitRef="usd">52320000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RhYmxlOjJhZjNkZDQwMjNlMTRjMGI4ZTIxZjdiZDZmOWZmYWJkL3RhYmxlcmFuZ2U6MmFmM2RkNDAyM2UxNGMwYjhlMjFmN2JkNmY5ZmZhYmRfMS0zLTEtMS0w_f3cfff13-7557-4aee-a9bc-0cf1518d3923"
      unitRef="usd">48122000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RhYmxlOjJhZjNkZDQwMjNlMTRjMGI4ZTIxZjdiZDZmOWZmYWJkL3RhYmxlcmFuZ2U6MmFmM2RkNDAyM2UxNGMwYjhlMjFmN2JkNmY5ZmZhYmRfMi0xLTEtMS0w_f2617da2-3ba3-401a-b150-a56bdd86c5da"
      unitRef="usd">35466000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RhYmxlOjJhZjNkZDQwMjNlMTRjMGI4ZTIxZjdiZDZmOWZmYWJkL3RhYmxlcmFuZ2U6MmFmM2RkNDAyM2UxNGMwYjhlMjFmN2JkNmY5ZmZhYmRfMi0zLTEtMS0w_d238622c-17e8-4450-81ce-c1a27155b354"
      unitRef="usd">30806000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RhYmxlOjJhZjNkZDQwMjNlMTRjMGI4ZTIxZjdiZDZmOWZmYWJkL3RhYmxlcmFuZ2U6MmFmM2RkNDAyM2UxNGMwYjhlMjFmN2JkNmY5ZmZhYmRfMy0xLTEtMS0w_9b96f1c8-534f-47bf-96b6-906cf511b251"
      unitRef="usd">16941000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RhYmxlOjJhZjNkZDQwMjNlMTRjMGI4ZTIxZjdiZDZmOWZmYWJkL3RhYmxlcmFuZ2U6MmFmM2RkNDAyM2UxNGMwYjhlMjFmN2JkNmY5ZmZhYmRfMy0zLTEtMS0w_735ff0bd-2935-439b-823a-7fb6edf78236"
      unitRef="usd">20301000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryNet
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RhYmxlOjJhZjNkZDQwMjNlMTRjMGI4ZTIxZjdiZDZmOWZmYWJkL3RhYmxlcmFuZ2U6MmFmM2RkNDAyM2UxNGMwYjhlMjFmN2JkNmY5ZmZhYmRfNC0xLTEtMS0w_eba9f80e-c2a3-4488-8c24-ae04fbe630eb"
      unitRef="usd">104727000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80MC9mcmFnOmM5Y2NiZmY0OWE1ODRkNzNhMTY0OGY1NjhmYTIzN2YyL3RhYmxlOjJhZjNkZDQwMjNlMTRjMGI4ZTIxZjdiZDZmOWZmYWJkL3RhYmxlcmFuZ2U6MmFmM2RkNDAyM2UxNGMwYjhlMjFmN2JkNmY5ZmZhYmRfNC0zLTEtMS0w_1aabb974-9512-4cb6-ab70-9739fc91d6c6"
      unitRef="usd">99229000</us-gaap:InventoryNet>
    <us-gaap:BusinessCombinationDisclosureTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RleHRyZWdpb246ZWU0NGYxMDk2NGQzNDFjODg0YTg5NmIxZmEzZjkxMjhfODE3Ng_bcb24b87-1350-48c5-8703-66cbe3372f2d">Acquisition &lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;High Precision Devices, Inc. Acquisition &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On October 19, 2020,  we acquired 100% of the shares of HPD for total consideration of $16.9 million, net of cash acquired of $1.7 million, which included an estimated adjustment for changes in working capital, which is not yet finalized. This acquisition brings highly specialized skills and know-how to address the unique test challenges within the emerging quantum computing, superconducting computing, and ultra-sensitive sensor markets which operate at temperatures as low as 30 millikelvin.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The acquisition was accounted for using the acquisition method of accounting, with FormFactor treated as the acquirer. The acquired assets and liabilities of HPD were recorded at their respective fair values including an amount for goodwill representing the difference between the acquisition consideration and the fair value of the identifiable net assets. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:27pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Our Condensed Consolidated Statements of Income include the financial results of HPD subsequent to the acquisition date of October 19, 2020. Revenue in fiscal 2020 related to HPD subsequent to the acquisition date that was included in our Condensed Consolidated Statements of Income was not material. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The acquisition price was allocated to the tangible and identified intangible assets acquired and liabilities assumed as of the closing date of the acquisition based upon their respective fair values. The fair values assigned to assets acquired and liabilities assumed were based on management&#x2019;s assumptions as of the reporting date. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;We estimated the acquisition price and the allocation of fair value to assets acquired and liabilities assumed as of the acquisition date, October 19, 2020. We subsequently made certain immaterial adjustments within the measurement period to the preliminary acquisition price allocation. See Note 5, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%"&gt;Goodwill and Intangible Assets&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;, for changes in identified intangible values and goodwill. Our purchase accounting remains open at March 27, 2021, subject to finalization of the fair value of &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;consideration and certain deferred tax items. The estimated fair value of assets acquired, including goodwill and intangibles, and liabilities assumed is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:87.642%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.428%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,680&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,017&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventory&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,047&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property, plant and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;669&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease, right of use assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,554&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Prepaid expenses and other current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;599&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Tangible assets acquired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,566&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,529)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts payable and accrued liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,268)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,554)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,840)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total tangible assets acquired and liabilities assumed&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;375&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,520&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,665&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net Assets Acquired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,560&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-indent:27pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The intangible assets as of the closing date of the acquisition included (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:67.174%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.969%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.280%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.347%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Useful Life (in years)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Developed technologies&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10.0&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.0&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Order backlog&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.5&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trade names&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;220&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.0&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,520&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.2&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of the intangible assets acquired in connection with the acquisition was determined using either the income, market or replacement cost methodologies. The intangible assets are being amortized over periods which reflect the pattern in which economic benefits of the assets are expected to be realized.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Identifiable Intangible Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Valuation of intangible assets involves multiple assumptions. The key assumptions are described below.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Developed technology acquired primarily consists of existing technology related to cryogenic probe stations, Adiabatic Demagnetization Refrigerator (&#x201c;ADR&#x201d;), and continuous ADR cryostats and similar tools, and technology related to other cryogenic applications. We valued the developed technology using the multi-period excess earnings method under the income approach. Using this approach, the estimated fair values were calculated using expected future cash flows from specific products discounted to their net present values at an appropriate risk-adjusted rate of return. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:27pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The value of customer relationships represents the fair value of future projected revenues that will be derived from the sale of products to HPD's existing customers. We valued customer relationships using the incremental cash flow method. This method estimates value based on the incremental cash flow afforded by having the customers relationships in place on the acquisition date versus having no relationships in place and needing to replicate or replace those relationships. The incremental cash flows are then discounted to a present value to arrive at an estimate of fair value for this asset class.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Order backlog represents the value of future sales under existing contracts as of the acquisition date. Expected cash flow from order backlog was valued on a discounted direct cash flow basis, net of returns on contributory assets such as working capital, property and equipment, trade name and assembled workforce.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The identified trade names intangibles relate to the estimated fair value of future cash flows related to the HPD brand. We valued trade names by applying the relief-from-royalty method under the income approach. This method is based on the application of a royalty rate to forecasted revenue under the trade name. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The excess of purchase price over the fair value assigned to the assets acquired and liabilities assumed represents the amount of goodwill resulting from the acquisition. We believe the factors that contributed to goodwill include synergies that are specific to our consolidated business, such as cost savings and operational efficiencies, and the acquisition of a talented workforce that expands our expertise in business development and commercializing semiconductor test products, none of which qualify for recognition as a separate intangible asset. We do not expect any portion of this goodwill to be deductible for tax purposes. The goodwill attributable to the acquisition was recorded as a non-current asset and is not amortized, but is subject to an annual review for impairment. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The goodwill arising from the acquisition was allocated to the HPD reporting unit within the Systems reportable segment. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have not presented unaudited combined pro forma financial information as the HPD acquisition was not significant to our consolidated results of operations and financial position.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Baldwin Park Acquisition &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On July 30, 2020, we acquired the probe card assets of Advantest Corporation for total cash consideration of $35.0 million. This acquisition brings important enabling technologies and capabilities for designing and manufacturing advanced probe cards, and adds a complementary 3D-NAND Flash probe-card product that is qualified and in production at one of the world's leading NAND Flash manufacturers.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The acquisition was accounted for using the acquisition method of accounting, with FormFactor treated as the acquirer. The acquired assets and liabilities of Baldwin Park were recorded at their respective fair values including an amount for goodwill representing the difference between the acquisition consideration and the fair value of the identifiable net assets. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:27pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Our Condensed Consolidated Statements of Income include the financial results of Baldwin Park subsequent to the acquisition date of July 30, 2020. Revenue related to Baldwin Park since the acquisition date that was included in our Condensed Consolidated Statements of Income for fiscal 2020 was not material. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;We estimated the acquisition price and the allocation of fair value to assets acquired and liabilities assumed as of the acquisition date, July 30, 2020. We subsequently made certain immaterial adjustments within the measurement period to the acquisition price allocation as a result of finalization of our valuation of identifiable assets and liabilities. See Note 5, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%"&gt;Goodwill and Intangible Assets,&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt; for changes in identified intangible values and goodwill. In the current quarter ended March&#160;27, 2021, we finalized our allocation of the assets acquired, including goodwill and intangibles, and liabilities assumed for the purchase as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:87.642%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.428%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Amount &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,365&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventory&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,727&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property, plant and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,053&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease, right of use assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;519&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Prepaid expenses and other current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;56&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Tangible assets acquired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,720&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts payable and accrued liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(743)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(519)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total net tangible assets acquired and liabilities assumed&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,458&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,942&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net assets acquired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The intangible assets as of July 30, 2020 included (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:67.174%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.969%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.280%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.347%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Useful Life (in years)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Developed technologies&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,800&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10.0&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.0&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;In-process research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;N/A&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.7&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Indications of fair value of the intangible assets acquired in connection with the acquisition were determined using either the income, market or replacement cost methodologies. The intangible assets are being amortized over periods which reflect the pattern in which economic benefits of the assets are expected to be realized.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Identifiable Intangible Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Valuation of intangible assets involves multiple assumptions. The key assumptions are described below.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Developed technology acquired consists of existing technology related to 3D NAND Flash probe cards and the value expected to be derived from interconnect technology. We valued the developed technology related to 3D NAND Flash using the multi-period excess earnings method under the income approach. Using this approach, the estimated fair values were calculated using expected future cash flows from specific products discounted to their net present values at an appropriate risk-adjusted rate of return. We valued the interconnect developed technology asset using the incremental cash flow method. This method estimates value based on the incremental cash flow afforded by having the interconnect capability in place on the acquisition date versus having no capability in place and needing to replicate or replace that capability. The incremental cash flows are then discounted to a present value to arrive at an estimate of fair value for this asset class.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;In-process research and development (&#x201c;IPR&amp;amp;D&#x201d;) acquired primarily consists of research and development projects that were in process at the time of acquisition related to technologies used in DRAM probe cards. Once these projects are complete they will be amortized over their useful life. We valued the IPR&amp;amp;D using the multi-period excess earnings method under the income approach. Using this approach, the estimated fair values were calculated using expected future cash flows from specific products discounted to their net present values at an appropriate risk-adjusted rate of return. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The value of customer relationships represents the fair value of future projected revenues that will be derived from the sale of products to Baldwin Park's existing customers. We valued customer relationships using the incremental cash flow method. This method estimates value based on the incremental cash flow afforded by having the customers relationships in place on the acquisition date versus having no relationships in place and needing to replicate or replace those relationships. The incremental cash flows are then discounted to a present value to arrive at an estimate of fair value for this asset class.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The excess of purchase price over the fair value assigned to the assets acquired and liabilities assumed represents the amount of goodwill resulting from the acquisition. We believe the factors that contributed to goodwill include synergies that are specific to our consolidated business, such as cost savings and operational efficiencies, and the acquisition of a talented workforce that expands our expertise in business development, none of which qualify for recognition as a separate intangible asset. We expect this goodwill to be deductible for tax purposes. The goodwill attributable to the acquisition was recorded as a non-current asset and is not amortized, but is subject to an annual review for impairment. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The goodwill arising from the acquisition was allocated to the Probe Cards reporting unit within the Probe Cards reportable segment. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have not presented unaudited combined pro forma financial information as the Baldwin Park acquisition was not significant to our consolidated results of operations and financial position.&lt;/span&gt;&lt;/div&gt;</us-gaap:BusinessCombinationDisclosureTextBlock>
    <us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired
      contextRef="i59457e16636c4a7f800a5687585d0059_I20201019"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RleHRyZWdpb246ZWU0NGYxMDk2NGQzNDFjODg0YTg5NmIxZmEzZjkxMjhfMjE5OTAyMzMwMjU2MQ_a038b2ec-19d6-4f38-bf41-2c3f2619ddab"
      unitRef="number">1</us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="i13d981e1e3314322933fc54d4f48f8ad_D20201019-20201019"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RleHRyZWdpb246ZWU0NGYxMDk2NGQzNDFjODg0YTg5NmIxZmEzZjkxMjhfMTA5OTUxMTY1MTgyNw_36b853b2-16c5-4df3-8920-09ca0faf3cc2"
      unitRef="usd">16900000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="i59457e16636c4a7f800a5687585d0059_I20201019"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RleHRyZWdpb246ZWU0NGYxMDk2NGQzNDFjODg0YTg5NmIxZmEzZjkxMjhfMTA5OTUxMTY1MTgzNw_05895d00-758b-464d-bb76-9643f70d3778"
      unitRef="usd">1700000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <form:SensorMarketsOperatingTemperature
      contextRef="i50122fb52abb4650a343bcaf0eb341eb_I20201019"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RleHRyZWdpb246ZWU0NGYxMDk2NGQzNDFjODg0YTg5NmIxZmEzZjkxMjhfMjE5OTAyMzMwMjU2Nw_406b15c4-f877-4605-8a6a-2b5d9629a426"
      unitRef="millikelvin">30</form:SensorMarketsOperatingTemperature>
    <us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RleHRyZWdpb246ZWU0NGYxMDk2NGQzNDFjODg0YTg5NmIxZmEzZjkxMjhfMjE5OTAyMzMwMjU3MA_5db8e42f-bcbc-4742-94f2-84e6e0f2598f">The estimated fair value of assets acquired, including goodwill and intangibles, and liabilities assumed is as follows (in thousands):&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:87.642%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.428%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,680&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,017&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventory&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,047&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property, plant and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;669&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease, right of use assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,554&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Prepaid expenses and other current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;599&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Tangible assets acquired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,566&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,529)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts payable and accrued liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,268)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,554)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,840)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total tangible assets acquired and liabilities assumed&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;375&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,520&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,665&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net Assets Acquired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,560&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:87.642%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.428%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Amount &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts receivable&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,365&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventory&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,727&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property, plant and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,053&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease, right of use assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;519&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Prepaid expenses and other current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;56&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Tangible assets acquired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,720&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accounts payable and accrued liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(743)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(519)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total net tangible assets acquired and liabilities assumed&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,458&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,942&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net assets acquired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="i59457e16636c4a7f800a5687585d0059_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfMS0yLTEtMS03NTA_b0e3138b-5e4f-4fde-988e-fde8b6d053bb"
      unitRef="usd">1680000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="i59457e16636c4a7f800a5687585d0059_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfMi0yLTEtMS03NTA_6741dee8-4eb2-48d3-86b0-6ec7cc58bc6c"
      unitRef="usd">1017000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="i59457e16636c4a7f800a5687585d0059_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfMy0yLTEtMS03NTA_ab0e23af-a668-4f63-ad37-0f4a6aa0bf63"
      unitRef="usd">3047000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="i59457e16636c4a7f800a5687585d0059_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfNC0yLTEtMS03NTA_f9363075-be28-4228-9e5f-0845879806cb"
      unitRef="usd">669000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <form:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets
      contextRef="i59457e16636c4a7f800a5687585d0059_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfNS0yLTEtMS03NTA_fbda5c01-ba6d-4cb4-8d9b-0b4886103843"
      unitRef="usd">2554000</form:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets
      contextRef="i59457e16636c4a7f800a5687585d0059_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfNi0yLTEtMS03NTA_c7342bbf-f570-406e-8979-f9c6bebec433"
      unitRef="usd">599000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets
      contextRef="i59457e16636c4a7f800a5687585d0059_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfNy0yLTEtMS03NTA_b27226ba-8f26-491b-8388-f61663088d03"
      unitRef="usd">9566000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue
      contextRef="i59457e16636c4a7f800a5687585d0059_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfOC0yLTEtMS03NTA_a9e5f22c-9b69-4969-a548-73eee5127b90"
      unitRef="usd">2529000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable
      contextRef="i59457e16636c4a7f800a5687585d0059_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfOS0yLTEtMS03NTA_a0990031-98bd-4838-bd45-88e1d91ca035"
      unitRef="usd">1268000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation
      contextRef="i59457e16636c4a7f800a5687585d0059_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfMTAtMi0xLTEtNzUw_3042bd88-8801-4c07-a8f4-db64ef578a9e"
      unitRef="usd">2554000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="i59457e16636c4a7f800a5687585d0059_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfMTEtMi0xLTEtNzUw_256c02da-5d57-465a-b18f-c6b4919dc1b6"
      unitRef="usd">2840000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet
      contextRef="i59457e16636c4a7f800a5687585d0059_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfMTItMi0xLTEtNzUw_6eb53d8e-c32f-4458-9f44-7ffd7f8f7c13"
      unitRef="usd">375000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="i59457e16636c4a7f800a5687585d0059_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfMTMtMi0xLTEtNzUw_c3b81b39-2b3e-4b48-8d14-30df0d78f1f4"
      unitRef="usd">11520000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:Goodwill
      contextRef="i59457e16636c4a7f800a5687585d0059_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfMTQtMi0xLTEtNzUw_fc8395df-6375-4281-8c2e-ce451b6f02c0"
      unitRef="usd">6665000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="i59457e16636c4a7f800a5687585d0059_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjlhOGI1ODMwN2YxNzRjMDRhNGFjYzBhNzA0OTg1NTg2L3RhYmxlcmFuZ2U6OWE4YjU4MzA3ZjE3NGMwNGE0YWNjMGE3MDQ5ODU1ODZfMTUtMi0xLTEtNzUw_deeda55d-b328-49f6-870a-a1b7be1cf367"
      unitRef="usd">18560000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RleHRyZWdpb246ZWU0NGYxMDk2NGQzNDFjODg0YTg5NmIxZmEzZjkxMjhfMjE5OTAyMzMwMjU3MQ_229c468c-5189-43d1-a76f-ef1963770a26">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The intangible assets as of the closing date of the acquisition included (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:67.174%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.969%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.280%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.347%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Useful Life (in years)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Developed technologies&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10.0&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.0&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Order backlog&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.5&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trade names&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;220&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.0&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,520&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.2&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The intangible assets as of July 30, 2020 included (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:67.174%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.969%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.280%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.347%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Weighted Average Useful Life (in years)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Developed technologies&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,800&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10.0&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.0&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;In-process research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;N/A&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7.7&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="i4be5a37c2e7946ba905ae550ba42fc3c_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfMS0yLTEtMS03NTA_cd5248e9-5b82-4ed0-a78f-7cfb536d4863"
      unitRef="usd">7500000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i7ba3f46d5d654736b039a7f7c8625257_D20201019-20201019"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfMS00LTEtMS03NTA_46c08487-fed6-4823-868f-a316e3c9cab6">P10Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="ibe9a4e09fb1948b2b4e9027bd1d509a7_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfMi0yLTEtMS03NTA_feee9f7a-436c-427e-ba92-7a952fb94925"
      unitRef="usd">3600000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i660f2d27d2e8460b88e123b35c1c4a93_D20201019-20201019"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfMi00LTEtMS03NTA_63b91062-304e-442b-b1b8-636220135c50">P5Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="i34afe745690d4ed7a3e161410ab24d3a_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfMy0yLTEtMS03NTA_d4aee1a1-a0bc-4c14-ad20-95cc7af46b53"
      unitRef="usd">200000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i3619f7a8938a4046b1854b6d2b2b5896_D20201019-20201019"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfMy00LTEtMS03NTA_6e569dd3-e090-45fd-83d3-3e954ab90b39">P0Y6M</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="i77516486733640dab1fa1c83989f6557_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfNC0yLTEtMS03NTA_8e4c8cf7-e4ce-452b-9d88-8f338d1907bc"
      unitRef="usd">220000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i091c18f477db46a0be4b3906425aa30c_D20201019-20201019"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfNC00LTEtMS03NTA_2a3f32bd-2458-45f6-82e2-31dc3f5b346b">P5Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="i59457e16636c4a7f800a5687585d0059_I20201019"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfNS0yLTEtMS03NTA_a015466f-e1a5-43c0-85f6-4ffc95e7e795"
      unitRef="usd">11520000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i13d981e1e3314322933fc54d4f48f8ad_D20201019-20201019"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjQ1MWU4Y2Y2OTIxOTRkZjI5OGYxMzk0YWMxNjFlYzQwL3RhYmxlcmFuZ2U6NDUxZThjZjY5MjE5NGRmMjk4ZjEzOTRhYzE2MWVjNDBfNS00LTEtMS03NTA_ccdc5430-2f91-40e7-857e-432ec5bcc398">P8Y2M12D</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="if72cec7ca3b342c2b044431e1d621082_D20200730-20200730"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RleHRyZWdpb246ZWU0NGYxMDk2NGQzNDFjODg0YTg5NmIxZmEzZjkxMjhfMTA5OTUxMTY0NjMxOA_d8083647-8240-420e-95ad-f5edf9533ff5"
      unitRef="usd">35000000.0</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfMS0yLTEtMS03NTA_b5e1a906-9d90-448b-b9b9-9c7a518edd0c"
      unitRef="usd">4365000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfMi0yLTEtMS03NTA_a9a30d5c-9841-4fbe-9bd4-462082426f21"
      unitRef="usd">2727000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfMy0yLTEtMS03NTA_4ea5081c-15b5-4e09-93fe-a9392b2fab6b"
      unitRef="usd">9053000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <form:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets
      contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfNC0yLTEtMS03NTA_8b920ba7-65df-48f7-bb95-d56d16dd62cd"
      unitRef="usd">519000</form:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets
      contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfNS0yLTEtMS03NTA_54d612b2-e0f5-4fd5-9f05-d25c8c75672f"
      unitRef="usd">56000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets
      contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfNi0yLTEtMS03NTA_e2244c0e-8985-49d9-a9ca-28b5739d0b80"
      unitRef="usd">16720000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable
      contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfNy0yLTEtMS03NTA_602a24c5-29d8-46a6-be05-168144792980"
      unitRef="usd">743000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation
      contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfOC0yLTEtMS03NTA_d39f47cb-2b7b-40bd-ad15-1c93f3ed81f3"
      unitRef="usd">519000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet
      contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfOS0yLTEtMS03NTA_d45c9aca-289e-4052-9013-722b264e69f2"
      unitRef="usd">15458000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfMTAtMi0xLTEtNzUw_3c995c05-d1a6-4563-8a43-dfd03106ba7d"
      unitRef="usd">13600000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:Goodwill
      contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfMTEtMi0xLTEtNzUw_96bcc025-3459-4fe3-ac17-ef02b3315ec4"
      unitRef="usd">5942000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjIzM2JkZDBjY2Y3ZDQ3OGE5YTYyODYwZmJiMjIxZjk4L3RhYmxlcmFuZ2U6MjMzYmRkMGNjZjdkNDc4YTlhNjI4NjBmYmIyMjFmOThfMTItMi0xLTEtNzUw_9dfd2ac6-a232-44c1-8e1a-3c011fa4abeb"
      unitRef="usd">35000000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="ide7271024d174ef18742760227df34bd_I20200730"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjdkZTY0OTY5YWU0NzQzMThhOGJkOTdkM2VjZmMzMWE2L3RhYmxlcmFuZ2U6N2RlNjQ5NjlhZTQ3NDMxOGE4YmQ5N2QzZWNmYzMxYTZfMS0yLTEtMS03NTA_818ac991-99d1-41d5-8cba-21523bfb7f63"
      unitRef="usd">8800000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="icb2bd5aa7a2f46d3b6a4d845d24c4fe5_D20200730-20200730"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjdkZTY0OTY5YWU0NzQzMThhOGJkOTdkM2VjZmMzMWE2L3RhYmxlcmFuZ2U6N2RlNjQ5NjlhZTQ3NDMxOGE4YmQ5N2QzZWNmYzMxYTZfMS00LTEtMS03NTA_b220aa37-5fd0-4611-813a-2fa5f77e05d2">P10Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="i9e3864372b01457b867f40f1b99d5eb7_I20200730"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjdkZTY0OTY5YWU0NzQzMThhOGJkOTdkM2VjZmMzMWE2L3RhYmxlcmFuZ2U6N2RlNjQ5NjlhZTQ3NDMxOGE4YmQ5N2QzZWNmYzMxYTZfMi0yLTEtMS03NTA_888a5310-b14a-4cb9-943c-b35cfc749051"
      unitRef="usd">4400000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="i238eedca206d433f933f027051460d35_D20200730-20200730"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjdkZTY0OTY5YWU0NzQzMThhOGJkOTdkM2VjZmMzMWE2L3RhYmxlcmFuZ2U6N2RlNjQ5NjlhZTQ3NDMxOGE4YmQ5N2QzZWNmYzMxYTZfMi00LTEtMS03NTA_d8d25ded-6950-4bd8-b75f-1c5c8a419a2c">P3Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="i766bb25c58e7483198d84fccbdf59f49_I20200730"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjdkZTY0OTY5YWU0NzQzMThhOGJkOTdkM2VjZmMzMWE2L3RhYmxlcmFuZ2U6N2RlNjQ5NjlhZTQ3NDMxOGE4YmQ5N2QzZWNmYzMxYTZfMy0yLTEtMS03NTA_3c7a65e8-7ea9-48ce-acbb-61d7a05a7a45"
      unitRef="usd">400000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="if97dfd7460674fdb9fcf6c7a90dc4881_I20200730"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjdkZTY0OTY5YWU0NzQzMThhOGJkOTdkM2VjZmMzMWE2L3RhYmxlcmFuZ2U6N2RlNjQ5NjlhZTQ3NDMxOGE4YmQ5N2QzZWNmYzMxYTZfNC0yLTEtMS03NTA_94c2f1d5-72bf-494e-92ba-afad29249760"
      unitRef="usd">13600000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="if72cec7ca3b342c2b044431e1d621082_D20200730-20200730"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80My9mcmFnOmVlNDRmMTA5NjRkMzQxYzg4NGE4OTZiMWZhM2Y5MTI4L3RhYmxlOjdkZTY0OTY5YWU0NzQzMThhOGJkOTdkM2VjZmMzMWE2L3RhYmxlcmFuZ2U6N2RlNjQ5NjlhZTQ3NDMxOGE4YmQ5N2QzZWNmYzMxYTZfNC00LTEtMS03NTA_a7c7f686-959e-4fa1-aa18-c8897fc3deb1">P7Y8M12D</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:IntangibleAssetsDisclosureTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RleHRyZWdpb246MDMyYTU3YWMwYTVlNDEwMWE0Yzg0YmQxNjc3Njc1MDZfNjUz_82f3c9a0-e080-49e9-b6e4-1735e1e329a6">Goodwill and Intangible Assets &lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Goodwill by reportable segment was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:60.157%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.331%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Probe Cards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Goodwill, gross, as of December 28, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;172,482&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,714&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;199,196&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Addition - FRT GmbH Acquisition&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;975&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;975&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Addition - Baldwin Park Acquisition&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,590&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,590&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Addition - HPD Acquisition&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,654&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,654&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign currency translation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,346&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,346&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Goodwill, gross, as of December 26, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;178,072&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;34,689&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;212,761&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Addition - Baldwin Park Acquisition&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;352&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;352&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Addition - HPD Acquisition&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign currency translation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(906)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(906)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Goodwill, gross, as of March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;178,424&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;35,794&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;214,218&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-indent:18pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have not recorded goodwill impairments for the three months ended March&#160;27, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Intangible assets were as follows (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:27.847%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.018%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 26, 2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Intangible Assets &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Gross&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Gross&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Net&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Developed technologies &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;173,318&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;142,344&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30,974&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;176,265&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;137,754&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;38,511&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Trade names&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,418&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;682&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,162&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,363&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;799&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;51,557&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;34,899&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;52,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33,378&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;19,110&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Backlog&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,969&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,897&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;72&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,227&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;327&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;In-process research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;235,344&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;186,558&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;48,786&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;239,542&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;180,395&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;59,147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amortization expense was included in our Condensed Consolidated Statements of Income as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 28,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenues&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,090&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,750&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,513&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,805&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,263&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The estimated future amortization of definite-lived intangible assets, excluding in-process research and development, is as follows (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:86.473%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.327%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fiscal Year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Remainder of 2021&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,933&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,591&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,240&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,625&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,364&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,633&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;48,386&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:IntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfGoodwillTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RleHRyZWdpb246MDMyYTU3YWMwYTVlNDEwMWE0Yzg0YmQxNjc3Njc1MDZfNjU0_1498206f-1ce8-472d-a815-9633b21c4537">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Goodwill by reportable segment was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:60.157%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.331%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Probe Cards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Goodwill, gross, as of December 28, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;172,482&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,714&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;199,196&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Addition - FRT GmbH Acquisition&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;975&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;975&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Addition - Baldwin Park Acquisition&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,590&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,590&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Addition - HPD Acquisition&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,654&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,654&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign currency translation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,346&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,346&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Goodwill, gross, as of December 26, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;178,072&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;34,689&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;212,761&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Addition - Baldwin Park Acquisition&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;352&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;352&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Addition - HPD Acquisition&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign currency translation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(906)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(906)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Goodwill, gross, as of March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;178,424&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;35,794&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;214,218&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfGoodwillTextBlock>
    <us-gaap:Goodwill
      contextRef="i5fbe358d1fba4d15802003da152cabe5_I20191228"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMS0yLTEtMS0w_4dc321e7-c48c-4c52-b817-5b78cc0f2275"
      unitRef="usd">172482000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i16d1465663cf4181b88e262e919eac34_I20191228"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMS00LTEtMS0w_374baa2b-89e3-4e02-b6eb-7ba105080f83"
      unitRef="usd">26714000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i1eeff05d49e94a6396339ea847351869_I20191228"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMS02LTEtMS0w_105cc8d9-186e-454a-b4c3-c0f51c53b641"
      unitRef="usd">199196000</us-gaap:Goodwill>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="ib5ea062f3a074d648ba1fc7f52535528_D20191229-20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMi0yLTEtMS0w_b101f82d-9953-4584-85bf-c4dd0579d418"
      unitRef="usd">0</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="if1b23dd6933f4e889c4bb707850bc3be_D20191229-20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMi00LTEtMS0w_06080405-cb84-4d5d-a71d-95cb2a26b517"
      unitRef="usd">975000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i766fc09da35840daa1048417dec5b977_D20191229-20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMi02LTEtMS0w_2ffc40f8-aedd-4661-b038-109603f1d263"
      unitRef="usd">975000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="ie80f2e2beded4af1a1f243fd65dc297b_D20191229-20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMy0yLTEtMS04Mw_e707e332-9c41-4067-8377-b41ed1cb82f0"
      unitRef="usd">5590000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i82b5853bb17a42078ac2a333aeb2bed1_D20191229-20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMy00LTEtMS04Mw_bc25af7f-0b32-42bc-9893-cb04d5e19246"
      unitRef="usd">0</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i49fc19518314461bae583bb4132265b7_D20191229-20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMy02LTEtMS04Mw_19d0440c-8df7-40d5-ab2a-4dd86ba3f657"
      unitRef="usd">5590000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i854854c15af54644af4470da171a27fd_D20191229-20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNC0yLTEtMS04Mw_9b140596-2fd0-48aa-8f70-626849ff6578"
      unitRef="usd">0</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="idb30b39ef576445dabd0e0388c84f91f_D20191229-20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNC00LTEtMS04Mw_1bd58abb-4a3e-4a1b-be8d-720f6af70219"
      unitRef="usd">4654000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i8fd0f82133594c9bb92ea3b28d516c49_D20191229-20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNC02LTEtMS04Mw_3989d1fc-b939-40a8-8262-2f9d80737fab"
      unitRef="usd">4654000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i6e37b691b2884ea28ca42c1218b34265_D20191229-20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMy0yLTEtMS0w_85193ac6-474c-483c-89f3-026ac9d7616c"
      unitRef="usd">0</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i7ca8f2c536d640d5bbafd309bf860ebe_D20191229-20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMy00LTEtMS0w_09635264-e02f-4cba-a858-c1e6fdae9a99"
      unitRef="usd">2346000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="icbf0d7ae2be742f18f08ffe120d98cd4_D20191229-20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfMy02LTEtMS0w_8f8fbe2d-5bec-47ac-9e4d-09fde620ecfa"
      unitRef="usd">2346000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:Goodwill
      contextRef="i619d2f5efcc04d5787337604033fed50_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNC0yLTEtMS0w_88962574-aed6-44e7-b4a1-f8f87e1ec5c9"
      unitRef="usd">178072000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i5dccd17e17534cb18864a0ff1fdc068f_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNC00LTEtMS0w_34a23421-fd0d-41f1-bf0d-5d5392ec9f7e"
      unitRef="usd">34689000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNC02LTEtMS0w_96fa348f-af8f-4513-b13f-fe55a3889cb9"
      unitRef="usd">212761000</us-gaap:Goodwill>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i48f3d16ebc514c6ebfdeca8868c3a584_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNS0yLTEtMS0w_71b8f011-3d67-4d06-88f1-0d2c35213005"
      unitRef="usd">352000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i145115c47a3c41fc84edd572945de66b_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNS00LTEtMS0w_247715b4-dfff-4ac9-bfe1-906964d7577d"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="idcc1dd5d0e904069951eb9d57880afab_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNS02LTEtMS0w_982c34a7-cf08-4f1f-812f-41fd07845561"
      unitRef="usd">352000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="ibec0ba8b66c74d83972365b461b6652f_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNi0yLTEtMS0w_1b51857a-2f1e-4a45-bcdf-810c04f96d93"
      unitRef="usd">0</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i68179e3b41cc4cb58d394c315b7e924d_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNi00LTEtMS0w_1f389d21-8d0b-4d16-8a18-d39d6eabe353"
      unitRef="usd">2011000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="ieab7c0ab187d444c939db25d53fe740e_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNi02LTEtMS0w_cd0e8fed-b1df-426b-bec1-f8721b9e759b"
      unitRef="usd">2011000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="i7e83c001dbc94677a59ca9c262df771e_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNy0yLTEtMS0w_26d7f5e8-c247-4594-b3c3-a71e610dc075"
      unitRef="usd">0</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="id7ca4f9333334d088e8e33a90870e029_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNy00LTEtMS0w_388dfc60-0970-4d82-9041-d87ba2069b82"
      unitRef="usd">-906000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfNy02LTEtMS0w_cad46ca8-a12a-4755-8ee0-0dc22db9869b"
      unitRef="usd">-906000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:Goodwill
      contextRef="icc685b74f6e64416a016dc848f1e2524_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfOC0yLTEtMS0w_f77ee810-b3c3-4619-9c36-799fc3fd9a03"
      unitRef="usd">178424000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i440894a76a544ec0a0423734205ccc41_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfOC00LTEtMS0w_4182eed3-8c21-467e-b627-9c7626064912"
      unitRef="usd">35794000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjZiOWQwMWY3ZDc3YTRkNDJhYTg4ZTMwYWQzMTYzOGFkL3RhYmxlcmFuZ2U6NmI5ZDAxZjdkNzdhNGQ0MmFhODhlMzBhZDMxNjM4YWRfOC02LTEtMS0w_648d904b-7ca0-4f63-841f-91aabe295ff0"
      unitRef="usd">214218000</us-gaap:Goodwill>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RleHRyZWdpb246MDMyYTU3YWMwYTVlNDEwMWE0Yzg0YmQxNjc3Njc1MDZfNTQ5NzU1ODE0MDI2OQ_be43b079-20ed-4ef3-b245-fdcd11d37411"
      unitRef="usd">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RleHRyZWdpb246MDMyYTU3YWMwYTVlNDEwMWE0Yzg0YmQxNjc3Njc1MDZfNjgx_cd5cd687-99dd-4df3-a75d-46e5f91ab2ab">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Intangible assets were as follows (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:27.847%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.011%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.018%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 26, 2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Intangible Assets &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Gross&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Gross&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Net&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Developed technologies &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;173,318&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;142,344&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30,974&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;176,265&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;137,754&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;38,511&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Trade names&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,418&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;682&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,162&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,363&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;799&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;51,557&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;34,899&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;52,488&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33,378&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;19,110&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Backlog&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,969&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,897&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;72&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,227&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,900&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;327&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;In-process research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;400&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;235,344&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;186,558&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;48,786&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;239,542&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;180,395&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;59,147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ifa0ef42d3e7c4271a02b2b18c7f35368_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMi0yLTEtMS0w_5effb786-f2b2-4f41-b341-acc295fb7563"
      unitRef="usd">173318000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="ifa0ef42d3e7c4271a02b2b18c7f35368_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMi00LTEtMS0w_462bf35f-d65b-44b5-8450-3aef3328f1fd"
      unitRef="usd">142344000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="ifa0ef42d3e7c4271a02b2b18c7f35368_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMi02LTEtMS0w_34fb342f-61e5-47f6-901b-83b493ad7509"
      unitRef="usd">30974000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="iecc90425d12643a18c349e91c410c441_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMi04LTEtMS0w_99de0872-9379-466e-a494-5e774388be7a"
      unitRef="usd">176265000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="iecc90425d12643a18c349e91c410c441_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMi0xMC0xLTEtMA_053ecb2c-9010-4bd7-a1e3-8c574f24bb7f"
      unitRef="usd">137754000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="iecc90425d12643a18c349e91c410c441_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMi0xMi0xLTEtMA_8f080c67-825f-499a-8f8a-ca10b2bdcb7b"
      unitRef="usd">38511000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ifeb7f6443c044ccc90725224ce7d04c4_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMy0yLTEtMS0w_43614fda-9477-484f-af90-715ba4efeeb2"
      unitRef="usd">8100000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="ifeb7f6443c044ccc90725224ce7d04c4_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMy00LTEtMS0w_dbdc61de-e0c1-4691-8ff3-36cc010d66c0"
      unitRef="usd">7418000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="ifeb7f6443c044ccc90725224ce7d04c4_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMy02LTEtMS0w_00f6813e-48d6-4ec5-8e48-349d16151199"
      unitRef="usd">682000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ic403daa15d7b47ce9cd798fbea57a31a_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMy04LTEtMS0w_2c749fbd-d257-4d33-ad66-a5c652e63c63"
      unitRef="usd">8162000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="ic403daa15d7b47ce9cd798fbea57a31a_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMy0xMC0xLTEtMA_a99710b5-edd2-463c-b21c-3a6ddd2557b0"
      unitRef="usd">7363000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="ic403daa15d7b47ce9cd798fbea57a31a_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfMy0xMi0xLTEtMA_1f4083d1-c013-4cc2-a3c4-06d7134afa0d"
      unitRef="usd">799000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i7bedb36b172349739dacb4c49e918974_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNC0yLTEtMS0w_a7b823ba-370e-413c-9dad-6ed6415f664c"
      unitRef="usd">51557000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i7bedb36b172349739dacb4c49e918974_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNC00LTEtMS0w_f95e697f-8adf-4e7d-b033-fe9ba2633d1e"
      unitRef="usd">34899000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i7bedb36b172349739dacb4c49e918974_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNC02LTEtMS0w_ea7c723b-85f5-445e-938d-78303cea0d37"
      unitRef="usd">16658000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ica1dbc1b460944e481d011c33fd38539_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNC04LTEtMS0w_264ceea9-3d72-4a73-a18e-ec25de8f87d2"
      unitRef="usd">52488000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="ica1dbc1b460944e481d011c33fd38539_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNC0xMC0xLTEtMA_ca877614-3e2d-497a-a485-434aadaf74ea"
      unitRef="usd">33378000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="ica1dbc1b460944e481d011c33fd38539_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNC0xMi0xLTEtMA_540145db-1675-4fe7-85bd-e03753b41d34"
      unitRef="usd">19110000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i3b84a14f3fb74e3cb977339c721078b8_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNS0yLTEtMS0w_64f201af-0f56-4183-9b78-b43a02b9a678"
      unitRef="usd">1969000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i3b84a14f3fb74e3cb977339c721078b8_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNS00LTEtMS0w_5bf5213e-0ed3-408d-a5dc-1e881b838a6f"
      unitRef="usd">1897000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i3b84a14f3fb74e3cb977339c721078b8_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNS02LTEtMS0w_971dd021-bc63-4045-b276-8357b8452adb"
      unitRef="usd">72000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i85e30e59906a44f59ba583be2d3605a0_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNS04LTEtMS0w_a3c7dd1c-1f17-4384-9fd2-bac0c49cff1a"
      unitRef="usd">2227000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i85e30e59906a44f59ba583be2d3605a0_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNS0xMC0xLTEtMA_1fb71ef9-d758-48bd-bad9-cb92785124fe"
      unitRef="usd">1900000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i85e30e59906a44f59ba583be2d3605a0_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNS0xMi0xLTEtMA_e5aaab7b-210c-4faa-99c1-5a1db444f813"
      unitRef="usd">327000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i4bc8eb7c629f4a2480195a0322e38b58_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi0yLTEtMS02NDQ_3a0865fc-2c4b-4504-a1e1-ad77afe66fd6"
      unitRef="usd">400000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i4bc8eb7c629f4a2480195a0322e38b58_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi00LTEtMS02NDQ_d35a836c-0855-466d-8e5c-baddae72ac8d"
      unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i4bc8eb7c629f4a2480195a0322e38b58_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi02LTEtMS02NDQ_4a117e88-3e7d-4791-92b8-935ea30a07e8"
      unitRef="usd">400000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i5ce2f0f934674931972c4ef6efa9f7db_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi04LTEtMS02NDQ_119724bf-f875-4830-bd77-a40573c2f3bd"
      unitRef="usd">400000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i5ce2f0f934674931972c4ef6efa9f7db_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi0xMC0xLTEtNjQ0_6749862b-eb77-4833-ade7-8f1359bdcdb0"
      unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i5ce2f0f934674931972c4ef6efa9f7db_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi0xMi0xLTEtNjQ0_2faa891b-c732-469b-bf60-0719bcb125de"
      unitRef="usd">400000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi0yLTEtMS0w_188f05fa-37c3-4513-9fff-524bf58ad94e"
      unitRef="usd">235344000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi00LTEtMS0w_3c6a0028-05c9-48df-a4cd-61a0e102df75"
      unitRef="usd">186558000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi02LTEtMS0w_5facf1b6-f561-4ec0-ba30-9dfea46a7cc9"
      unitRef="usd">48786000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi04LTEtMS0w_9cf5fa78-f5be-4b5e-9c02-9d5a1b90281d"
      unitRef="usd">239542000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi0xMC0xLTEtMA_d16a6c90-c3f0-4ad5-a7d8-941659998026"
      unitRef="usd">180395000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjU3ZjY0M2ZmNmVlNDRkZGY4ZjFjNTIyNGFiN2Y2NzQ0L3RhYmxlcmFuZ2U6NTdmNjQzZmY2ZWU0NGRkZjhmMWM1MjI0YWI3ZjY3NDRfNi0xMi0xLTEtMA_d7ad6347-823f-41d9-8b81-46e2c9aae846"
      unitRef="usd">59147000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RleHRyZWdpb246MDMyYTU3YWMwYTVlNDEwMWE0Yzg0YmQxNjc3Njc1MDZfNjU3_ef8112a9-50e8-4d86-95cd-585b932e1940">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amortization expense was included in our Condensed Consolidated Statements of Income as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 28,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenues&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,090&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,750&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,513&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,805&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,263&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i0d1ea4fd763a46b5a3950b317c8ffaaf_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjE5NTUxYTU5MTk3ZDQ3YzA4MDYyNTQwZTIyMjNjNTUwL3RhYmxlcmFuZ2U6MTk1NTFhNTkxOTdkNDdjMDgwNjI1NDBlMjIyM2M1NTBfMi0xLTEtMS0w_22129f7d-3fe1-453b-bd1f-1d5a23ace20b"
      unitRef="usd">5090000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i58b6c2d1e0654942851c8b0deb45c8eb_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjE5NTUxYTU5MTk3ZDQ3YzA4MDYyNTQwZTIyMjNjNTUwL3RhYmxlcmFuZ2U6MTk1NTFhNTkxOTdkNDdjMDgwNjI1NDBlMjIyM2M1NTBfMi0zLTEtMS0w_8c092640-60a3-4ebc-ac68-cfef6770aedf"
      unitRef="usd">5750000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="iefe5e641875c47c38077d9787aeda6d1_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjE5NTUxYTU5MTk3ZDQ3YzA4MDYyNTQwZTIyMjNjNTUwL3RhYmxlcmFuZ2U6MTk1NTFhNTkxOTdkNDdjMDgwNjI1NDBlMjIyM2M1NTBfMy0xLTEtMS0w_5d9e8f41-895b-40e1-856c-28a44f43938f"
      unitRef="usd">1715000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i827c2859272f46d1af6b076a94267ac8_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjE5NTUxYTU5MTk3ZDQ3YzA4MDYyNTQwZTIyMjNjNTUwL3RhYmxlcmFuZ2U6MTk1NTFhNTkxOTdkNDdjMDgwNjI1NDBlMjIyM2M1NTBfMy0zLTEtMS0w_c519dd17-5472-4851-a7d0-503716b31981"
      unitRef="usd">1513000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjE5NTUxYTU5MTk3ZDQ3YzA4MDYyNTQwZTIyMjNjNTUwL3RhYmxlcmFuZ2U6MTk1NTFhNTkxOTdkNDdjMDgwNjI1NDBlMjIyM2M1NTBfNC0xLTEtMS0w_1ece35ee-d365-47df-8627-4c1ecbc84305"
      unitRef="usd">6805000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOjE5NTUxYTU5MTk3ZDQ3YzA4MDYyNTQwZTIyMjNjNTUwL3RhYmxlcmFuZ2U6MTk1NTFhNTkxOTdkNDdjMDgwNjI1NDBlMjIyM2M1NTBfNC0zLTEtMS0w_5b7f5ae3-6985-4c74-a7d9-53efed5c5684"
      unitRef="usd">7263000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RleHRyZWdpb246MDMyYTU3YWMwYTVlNDEwMWE0Yzg0YmQxNjc3Njc1MDZfNjYy_32dea7eb-f147-4c03-8c4d-7d99be3f7949">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The estimated future amortization of definite-lived intangible assets, excluding in-process research and development, is as follows (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:86.473%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.327%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fiscal Year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Remainder of 2021&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,933&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,591&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,240&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,625&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,364&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,633&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;48,386&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOmFhNTA1NDEzMzNhMjRiYTI4MjhkODM3ODgwZTliZWU3L3RhYmxlcmFuZ2U6YWE1MDU0MTMzM2EyNGJhMjgyOGQ4Mzc4ODBlOWJlZTdfMS0yLTEtMS0w_e7d28fe1-ce61-416c-9bcd-6eca5e78e594"
      unitRef="usd">11933000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOmFhNTA1NDEzMzNhMjRiYTI4MjhkODM3ODgwZTliZWU3L3RhYmxlcmFuZ2U6YWE1MDU0MTMzM2EyNGJhMjgyOGQ4Mzc4ODBlOWJlZTdfMi0yLTEtMS0w_892ee693-5135-40bb-bdc6-c7e4b93d8a59"
      unitRef="usd">9591000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOmFhNTA1NDEzMzNhMjRiYTI4MjhkODM3ODgwZTliZWU3L3RhYmxlcmFuZ2U6YWE1MDU0MTMzM2EyNGJhMjgyOGQ4Mzc4ODBlOWJlZTdfMy0yLTEtMS0w_329cc13d-6571-4f81-aa05-1612d533cab0"
      unitRef="usd">7240000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOmFhNTA1NDEzMzNhMjRiYTI4MjhkODM3ODgwZTliZWU3L3RhYmxlcmFuZ2U6YWE1MDU0MTMzM2EyNGJhMjgyOGQ4Mzc4ODBlOWJlZTdfNC0yLTEtMS0w_cabd7b39-113e-4b45-85ae-eeb997ae813b"
      unitRef="usd">4625000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOmFhNTA1NDEzMzNhMjRiYTI4MjhkODM3ODgwZTliZWU3L3RhYmxlcmFuZ2U6YWE1MDU0MTMzM2EyNGJhMjgyOGQ4Mzc4ODBlOWJlZTdfNS0yLTEtMS0w_d9a59781-4a64-48e1-b2c5-88f2e55a70b4"
      unitRef="usd">4364000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <form:FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOmFhNTA1NDEzMzNhMjRiYTI4MjhkODM3ODgwZTliZWU3L3RhYmxlcmFuZ2U6YWE1MDU0MTMzM2EyNGJhMjgyOGQ4Mzc4ODBlOWJlZTdfNi0yLTEtMS0w_32ac94b1-681f-4f41-af28-d4eca0fb8e7f"
      unitRef="usd">10633000</form:FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour>
    <form:FiniteLivedIntangibleAssetsAmortizationExpenseTotal
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV80Ni9mcmFnOjAzMmE1N2FjMGE1ZTQxMDFhNGM4NGJkMTY3NzY3NTA2L3RhYmxlOmFhNTA1NDEzMzNhMjRiYTI4MjhkODM3ODgwZTliZWU3L3RhYmxlcmFuZ2U6YWE1MDU0MTMzM2EyNGJhMjgyOGQ4Mzc4ODBlOWJlZTdfNy0yLTEtMS0w_81827dc7-b3e6-4a2f-b3a0-3e72f733f4a6"
      unitRef="usd">48386000</form:FiniteLivedIntangibleAssetsAmortizationExpenseTotal>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RleHRyZWdpb246MDYzZWNmYTI1OTBkNGQyMmJjNGQyZjQwOGQzM2NlODJfOTk_3a31614d-2502-47f2-8341-d436a5379f96">Accrued Liabilities&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued liabilities consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 26,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accrued compensation and benefits&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,092&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33,110&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accrued income and other taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,008&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,976&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accrued warranty&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,719&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Employee stock purchase plan contributions withheld&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,109&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,240&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accrued contingent consideration &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,884&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,012&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other accrued expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,656&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,086&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43,468&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;55,342&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock>
    <us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RleHRyZWdpb246MDYzZWNmYTI1OTBkNGQyMmJjNGQyZjQwOGQzM2NlODJfMTA2_a2c8e67c-7217-4dbf-ba14-a8b8952d89ec">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued liabilities consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 26,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accrued compensation and benefits&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,092&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33,110&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accrued income and other taxes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,008&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,976&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accrued warranty&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,719&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Employee stock purchase plan contributions withheld&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,109&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,240&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accrued contingent consideration &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,884&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,012&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other accrued expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,656&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,086&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43,468&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;55,342&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfMS0xLTEtMS0w_871ceb5b-8ef4-4f01-868a-22c9797e1b08"
      unitRef="usd">28092000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfMS0zLTEtMS0w_efa07ec6-dfce-4e14-85bc-059b597187f5"
      unitRef="usd">33110000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:TaxesPayableCurrentAndNoncurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfMi0xLTEtMS0w_fa455e91-19e9-4eee-ac56-1eb48ca47c17"
      unitRef="usd">3008000</us-gaap:TaxesPayableCurrentAndNoncurrent>
    <us-gaap:TaxesPayableCurrentAndNoncurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfMi0zLTEtMS0w_67d720c1-113e-444a-82e4-f42ba2ca8b4a"
      unitRef="usd">6976000</us-gaap:TaxesPayableCurrentAndNoncurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfMy0xLTEtMS0w_db6cd5be-fb75-4b3a-b3b8-4dfa783a0dac"
      unitRef="usd">3719000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:ProductWarrantyAccrualClassifiedCurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfMy0zLTEtMS0w_e9a6b303-0a94-4e53-b7f0-89b93528619c"
      unitRef="usd">3918000</us-gaap:ProductWarrantyAccrualClassifiedCurrent>
    <us-gaap:AccruedEmployeeBenefitsCurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfNC0xLTEtMS0w_f3ff6b4f-246c-46d8-a57f-22b79db4a145"
      unitRef="usd">2109000</us-gaap:AccruedEmployeeBenefitsCurrent>
    <us-gaap:AccruedEmployeeBenefitsCurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfNC0zLTEtMS0w_9ac15544-65f2-4bd0-aa46-382527930bcf"
      unitRef="usd">4240000</us-gaap:AccruedEmployeeBenefitsCurrent>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityCurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfNS0xLTEtMS0w_1d2ab02c-424f-4005-84e9-7722ab33418b"
      unitRef="usd">3884000</us-gaap:BusinessCombinationContingentConsiderationLiabilityCurrent>
    <us-gaap:BusinessCombinationContingentConsiderationLiabilityCurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfNS0zLTEtMS0w_35f392a5-99d3-40a6-bbea-15171ee56f6a"
      unitRef="usd">4012000</us-gaap:BusinessCombinationContingentConsiderationLiabilityCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfNi0xLTEtMS0w_41029a03-d780-485f-add1-e7beba9d50a7"
      unitRef="usd">2656000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfNi0zLTEtMS0w_c533728e-feae-4dc5-b019-a461b8a4a9ad"
      unitRef="usd">3086000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfNy0xLTEtMS0w_f20e359d-a8e3-4a64-a433-9f1b02fdc1a2"
      unitRef="usd">43468000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81Mi9mcmFnOjA2M2VjZmEyNTkwZDRkMjJiYzRkMmY0MDhkMzNjZTgyL3RhYmxlOmJhY2YxOTRlMzE1ZTQ0OWE5NTZmOTQ1MjFkMzNiYWQ2L3RhYmxlcmFuZ2U6YmFjZjE5NGUzMTVlNDQ5YTk1NmY5NDUyMWQzM2JhZDZfNy0zLTEtMS0w_da4f9fef-ffac-4096-8313-f69125d17c22"
      unitRef="usd">55342000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:FairValueDisclosuresTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfODA3MQ_6a0211c9-287f-4024-98c6-26680d0a775b">Fair Value and Derivative Instruments&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Whenever possible, the fair values of our financial assets and liabilities are determined using quoted market prices of identical securities or quoted market prices of similar securities from active markets. The three levels of inputs that may be used to measure fair value are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 1 valuations are obtained from real-time quotes for transactions in active exchange markets involving identical securities;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 2 valuations utilize significant observable inputs, such as quoted prices for similar assets or liabilities, quoted prices near the reporting date in markets that are less active, or other inputs that are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities; and&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 3 valuations utilize unobservable inputs to the valuation methodology and include our own data about assumptions market participants would use in pricing the asset or liability based on the best information available under the circumstances.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We did not have any transfers of assets or liabilities measured at fair value on a recurring basis to or from Level 1, Level 2 or Level 3 during the three months ended March&#160;27, 2021 or the year ended December&#160;26, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The carrying values of Cash, Accounts receivable, net, Restricted cash, Prepaid expenses and other current assets, Accounts payable, Accrued liabilities, and term loans, net of unamortized issuance costs, approximate fair value due to their short maturities. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;No changes were made to our valuation techniques during the first three months of fiscal 2021.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Assets and Liabilities Measured at Fair Value on a Recurring Basis&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Assets and liabilities measured at fair value on a recurring basis were as follows (in thousands):&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:46.036%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.381%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.381%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.381%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.385%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cash equivalents:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;34,254&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;34,254&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt 0 25.75pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;39,754&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;39,754&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Marketable securities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;U.S. treasuries&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,669&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,669&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;Certificates of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,212&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,212&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;U.S. agency securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;575&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;575&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;44,146&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;44,146&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15,491&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15,491&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt 0 7.75pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,669&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;61,424&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;94,093&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign exchange derivative contracts (Designated)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;144&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;144&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest rate swap derivative contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;72,423&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;62,313&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;134,736&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign exchange derivative contracts (Designated)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(100)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(100)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest rate swap derivative contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(113)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(113)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Contingent consideration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,884)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,884)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(213)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,884)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(4,097)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:46.036%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.381%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.381%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.381%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.385%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 26, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cash equivalents:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43,019&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43,019&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Marketable securities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;U.S. treasuries&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;40,726&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;40,726&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Certificates of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,179&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,179&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;U.S. agency securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;575&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;575&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,330&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,330&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;40,726&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;67,810&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign exchange derivative contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,057&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,057&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest rate swap derivative contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;83,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,198&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;111,943&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest rate swap derivative contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(87)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(87)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Contingent consideration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(4,012)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(4,012)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(87)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(4,012)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(4,099)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Cash Equivalents &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of our cash equivalents is determined based on quoted market prices for similar or identical securities. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Marketable Securities &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We classify our marketable securities as available-for-sale and value them utilizing a market approach. Our investments are priced by pricing vendors who provide observable inputs for their pricing without applying significant judgment. Broker pricing is used mainly when a quoted price is not available, the investment is not priced by our pricing vendors or when a broker price &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;is more reflective of fair value. Our broker-priced investments are categorized as Level 2 investments because fair value is based on similar assets without applying significant judgments. In addition, all investments have a sufficient trading volume to demonstrate that the fair value is appropriate.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Unrealized gains and losses were immaterial and were recorded as a component of Accumulated other comprehensive income in our Condensed Consolidated Balance Sheets. We did not have any other-than-temporary unrealized gains or losses at either period end included in these financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Contingent Consideration&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contingent consideration, arising from the acquisition of FRT, is a cash amount equal to 1.5x EBIT as defined in the purchase agreement, up to a maximum of &#x20ac;10.3&#160;million, payable subject to the performance of the acquired business in calendar 2020. We estimated the fair value of contingent consideration using a probability weighted approach. Key assumptions in determining the fair value of contingent consideration included estimating EBIT levels that we believed as of the acquisition date were likely to be achieved during the performance period and discounting at an appropriate discount rate. Contingent consideration as of March&#160;27, 2021 was estimated to be $3.9 million, with the change from December&#160;26, 2020 resulting from foreign currency translation.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Interest Rate Swaps &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of our interest rate swap contracts is determined at the end of each reporting period based on valuation models that use interest rate yield curves as inputs. For accounting purposes, our interest rate swap contracts qualify for, and are designated as, cash flow hedges. The cash flows associated with the interest rate swaps are reported in Net cash provided by operating activities in our Condensed Consolidated Statements of Cash Flows and the fair value of the interest rate swap contracts are recorded within Accrued liabilities and Other liabilities in our Condensed Consolidated Balance Sheets. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The impact of the interest rate swaps on our Condensed Consolidated Statements of Income was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:36.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.969%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.605%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Amount of Gain or (Loss) Recognized in OCI on Derivative (Effective Portion)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Location of Gain or (Loss) Reclassified from Accumulated OCI into Income (Effective Portion)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Amount of Gain or (Loss) Reclassified from Accumulated OCI into Income (Effective Portion)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Location of Gain or (Loss) Recognized in Income on Derivative (Ineffective Portion)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Amount of Gain or (Loss) Recognized in Income on Derivative (Ineffective Portion)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;624&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(38)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended March 28, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(96)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;22&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Foreign Exchange Derivative Contracts&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We operate and sell our products in various global markets. As a result, we are exposed to changes in foreign currency exchange rates. We utilize foreign currency forward contracts to hedge against future movements in foreign exchange rates that affect certain existing foreign currency denominated assets and liabilities and forecasted foreign currency revenue and expense transactions. Under this program, our strategy is to have increases or decreases in our foreign currency exposures mitigated by gains or losses on the foreign currency forward contracts in order to mitigate the risks and volatility associated with foreign currency transaction gains or losses. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We do not use derivative financial instruments for speculative or trading purposes. For accounting purposes, certain of our foreign currency forward contracts are not designated as hedging instruments and, accordingly, we record the fair value of these contracts as of the end of our reporting period in our Condensed Consolidated Balance Sheets with changes in fair value recorded within Other income (expense), net in our Condensed Consolidated Statement of Income for both realized and unrealized gains and losses. Certain of our foreign currency forward contracts are designated as cash flow hedges, and, accordingly, we record the fair value of these contracts as of the end of our reporting period in our Condensed Consolidated Balance Sheets with changes in fair value recorded as a component of Accumulated other comprehensive income and reclassified into earnings in the same period in which the hedged transaction affects earnings, and in the same line item on the Condensed Consolidated Statements of Income as the impact of the hedge transaction. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of our foreign exchange derivative contracts was determined based on current foreign currency exchange rates and forward points. All of our foreign exchange derivative contracts outstanding at March&#160;27, 2021 will mature by the first quarter of fiscal 2022.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides information about our foreign currency forward contracts outstanding as of March&#160;27, 2021 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.854%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.345%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.385%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.248%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.385%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.251%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Currency&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Contract Position&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Contract Amount&lt;br/&gt;(Local Currency)&lt;br/&gt;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Contract Amount&lt;br/&gt;(U.S. Dollars)&lt;br/&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Euro Dollar&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Buy&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(10,141)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(12,025)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Euro Dollar&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sell&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,043&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,026&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Japanese Yen&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Buy&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,971,765)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(17,977)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Korean Won&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sell&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,129,743&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,767&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Taiwan Dollar&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sell&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,972&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;279&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total USD notional amount of outstanding foreign exchange contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(13,930)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our foreign currency contracts are classified within Level 2 of the fair value hierarchy as they are valued using pricing models that utilize observable market inputs.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The impact of foreign exchange derivative contracts not designated as cash flow hedges on our Condensed Consolidated Statements of Income was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:37.350%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:33.549%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.180%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.331%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Amount of Gain (Loss) Recognized on Derivatives&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Derivatives Not Designated as Hedging Instruments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Location of Gain (Loss) Recognized on Derivatives&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 28,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign exchange forward contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other income (expense), net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,288&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(115)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The impact of foreign exchange derivative contracts designated as cash flow hedges on our Condensed Consolidated Statements of Income was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:42.467%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:28.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.332%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Amount of Gain (Loss) Recognized in Accumulated OCI on Derivative &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Location of Gain (Loss) Reclassified from Accumulated OCI into Income &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Amount of Gain (Loss) Reclassified from Accumulated OCI into Income &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(526)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;82&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;362&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended March 28, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(120)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(18)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(43)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(181)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Assets and Liabilities Measured at Fair Value on a Non-Recurring Basis&lt;/span&gt;&lt;/div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We measure and report our non-financial assets such as Property, plant and equipment, Goodwill and Intangible assets at fair value on a non-recurring basis if we determine these assets to be impaired or in the period when we make a business acquisition. Other than as discussed in Note 4, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Acquisition&lt;/span&gt;, there were no assets or liabilities measured at fair value on a nonrecurring basis during the three months ended March&#160;27, 2021 or March&#160;28, 2020.</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:FairValueMeasurementPolicyPolicyTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfODA3OQ_8774f8db-6b7d-493f-8649-c1090bee5b3f">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Whenever possible, the fair values of our financial assets and liabilities are determined using quoted market prices of identical securities or quoted market prices of similar securities from active markets. The three levels of inputs that may be used to measure fair value are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 1 valuations are obtained from real-time quotes for transactions in active exchange markets involving identical securities;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 2 valuations utilize significant observable inputs, such as quoted prices for similar assets or liabilities, quoted prices near the reporting date in markets that are less active, or other inputs that are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities; and&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 3 valuations utilize unobservable inputs to the valuation methodology and include our own data about assumptions market participants would use in pricing the asset or liability based on the best information available under the circumstances.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We did not have any transfers of assets or liabilities measured at fair value on a recurring basis to or from Level 1, Level 2 or Level 3 during the three months ended March&#160;27, 2021 or the year ended December&#160;26, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The carrying values of Cash, Accounts receivable, net, Restricted cash, Prepaid expenses and other current assets, Accounts payable, Accrued liabilities, and term loans, net of unamortized issuance costs, approximate fair value due to their short maturities. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;No changes were made to our valuation techniques during the first three months of fiscal 2021.&lt;/span&gt;&lt;/div&gt;Assets and Liabilities Measured at Fair Value on a Non-Recurring BasisWe measure and report our non-financial assets such as Property, plant and equipment, Goodwill and Intangible assets at fair value on a non-recurring basis if we determine these assets to be impaired or in the period when we make a business acquisition.</us-gaap:FairValueMeasurementPolicyPolicyTextBlock>
    <us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfODA3NA_ffd4f8d8-4f2f-41b3-90b8-2a13fe299c87">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Assets and liabilities measured at fair value on a recurring basis were as follows (in thousands):&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:46.036%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.381%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.381%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.381%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.385%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cash equivalents:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;34,254&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;34,254&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,500&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt 0 25.75pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;39,754&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;39,754&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Marketable securities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;U.S. treasuries&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,669&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,669&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;Certificates of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,212&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,212&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;U.S. agency securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;575&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;575&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;44,146&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;44,146&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;Commercial paper&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15,491&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;15,491&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt 0 7.75pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;32,669&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;61,424&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;94,093&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign exchange derivative contracts (Designated)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;144&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;144&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest rate swap derivative contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;72,423&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;62,313&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;134,736&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign exchange derivative contracts (Designated)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(100)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(100)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest rate swap derivative contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(113)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(113)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Contingent consideration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,884)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,884)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(213)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,884)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(4,097)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:46.036%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.381%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.381%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.381%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.385%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 26, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cash equivalents:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Money market funds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43,019&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43,019&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Marketable securities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;U.S. treasuries&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;40,726&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;40,726&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Certificates of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,179&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,179&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;U.S. agency securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;575&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;575&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,330&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,330&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;40,726&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;67,810&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign exchange derivative contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,057&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,057&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest rate swap derivative contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;57&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;83,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,198&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;111,943&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest rate swap derivative contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(87)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(87)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Contingent consideration&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(4,012)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(4,012)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(87)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(4,012)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(4,099)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i83382e7d2c8b4fabb2db33d207dfb366_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMy0yLTEtMS0w_7d001050-4f4f-447b-95e8-7b249252fcf8"
      unitRef="usd">34254000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="if17228f003c047758a39294ad5ba5d27_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMy00LTEtMS0w_1cc1e233-d197-4b38-ab91-2a8d8085efbd"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i8c9ac72027b144dcb23e62669dfd6195_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMy02LTEtMS0w_e3a7b459-fdb8-4162-8f32-272707322b44"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="ia598581b10a74d18bada3c46855fa52b_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMy04LTEtMS0w_ca2584cf-44d0-4a93-9c0a-36688a1f9779"
      unitRef="usd">34254000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="ic9f7e7ae347849c5b4e45cc4c1175466_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfNC0yLTEtMS0w_8f3fb74d-c8cd-4088-a80f-a2e640618a3b"
      unitRef="usd">5500000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i145f335ea1fb463a8fc222c84ac94981_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfNC00LTEtMS0w_db8cac6d-bada-46ee-8e17-591ba3ac7c60"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i4f967f58aa1640f0b24801437f5fe982_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfNC02LTEtMS0w_9e8eebdf-3643-419b-aecf-a583c813bbd3"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="ie3f11bbb05014b3a83067a076d211d97_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfNC04LTEtMS0w_43f02242-5c51-436d-9284-46a6c6a9122d"
      unitRef="usd">5500000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i7885f9de272c46a38898e5b2b6cbeadd_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfNi0yLTEtMS0w_1c75e22b-f017-4686-a344-bf1a53344436"
      unitRef="usd">39754000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i7144b8981c9b457781eb7907f050e5f1_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfNi00LTEtMS0w_f2342e31-41e3-4719-bcbd-174903ff6910"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i5a9be7cee5ec4fd9be9fa2e73eff96cf_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfNi02LTEtMS0w_8718298a-b1b0-4b1c-9d2b-f4ccb2ad95ba"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfNi04LTEtMS0w_7c0e9b81-e7d8-4470-9b8c-fac2a677aaef"
      unitRef="usd">39754000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:MarketableSecurities
      contextRef="i6247d6e9647449e09fed7cab29b95aae_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfOC0yLTEtMS0w_be35af23-d57b-4861-86bb-3f8040d5ea48"
      unitRef="usd">32669000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i9419dfa20588499f825ec3b1b3519791_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfOC00LTEtMS0w_432ea496-f3cc-4eb3-8729-3213fa149647"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="ibd52566f15684ea5b8dc2aa32c37242e_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfOC02LTEtMS0w_744348af-4626-4796-bbf6-866de5496cbb"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i89ef81a9020d44ecb89f4714a761bab6_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfOC04LTEtMS0w_58ed461b-02ee-43e5-bb5e-44dbbf78c30b"
      unitRef="usd">32669000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i93d3ad69b7fb46b0a4b4748efdc779b4_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfOS0yLTEtMS0w_5dddf543-d6ec-4652-98e5-2779b21ec1a4"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i5e32dcdbcf724b128e337737e3527dab_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfOS00LTEtMS0w_8da04d7c-7cd5-4e9c-a738-f0c8bd1c90c5"
      unitRef="usd">1212000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="id9361ecbb0904810b3b071f12fda23ff_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfOS02LTEtMS0w_6dc24fd8-efa8-4587-955b-0af14b833a63"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="ifdb56f2ebd8041eaa7de2d28e2d7d79c_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfOS04LTEtMS0w_0cefab16-cdaf-499f-b2f6-e3f5adb88bc7"
      unitRef="usd">1212000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i0012f13b69834e1a862520ec5f44fed2_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTAtMi0xLTEtMA_f3df6244-5f05-49e3-a23b-ee8924eef5e4"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i7bea863d5baf4ad69c8218ba4f322c22_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTAtNC0xLTEtMA_3431c455-9828-460d-acc0-132a22f80c1a"
      unitRef="usd">575000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="ib7dec811e88d4655b3519f0d1713cc26_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTAtNi0xLTEtMA_7d206f3e-6c44-4a94-9815-67f6dc8174bf"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="iac59b73a86d648b3aabedd57b6040b04_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTAtOC0xLTEtMA_ef8e710d-d832-4369-90f0-6ba4ee10b9a5"
      unitRef="usd">575000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i9a62e1daa19e43afad5bc9f161785331_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTEtMi0xLTEtMA_5ef0e1fc-7a38-4cee-9b6f-81dd49b4af3d"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="if182b9d1747c4455ab48ec0820db5ba1_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTEtNC0xLTEtMA_5e593863-d186-4a57-a293-0af191845a4d"
      unitRef="usd">44146000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="ife64508f4e4e4720b46c14af9cd0f17b_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTEtNi0xLTEtMA_109d3951-dbdb-411a-a8c9-debf416a4424"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="ib02d06d5d50544ad87c8183e83c4cfd9_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTEtOC0xLTEtMA_72dd7d0b-a917-440c-b8a2-d4da43b1fe24"
      unitRef="usd">44146000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="ic9f7e7ae347849c5b4e45cc4c1175466_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTItMi0xLTEtMA_0f5aa7b4-0f67-4c80-9289-d9017e26a606"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i145f335ea1fb463a8fc222c84ac94981_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTItNC0xLTEtMA_dd5df3f4-c6bc-43bb-b9f0-7ff044904bc7"
      unitRef="usd">15491000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i4f967f58aa1640f0b24801437f5fe982_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTItNi0xLTEtMA_ac3e7e55-e162-4dbd-9698-c019834ef1ff"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="ie3f11bbb05014b3a83067a076d211d97_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTItOC0xLTEtMA_662285fb-3efa-4973-8125-9e12f72320c5"
      unitRef="usd">15491000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i7885f9de272c46a38898e5b2b6cbeadd_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTMtMi0xLTEtMA_bfc7457d-14d7-4415-811f-c338e48f7bc4"
      unitRef="usd">32669000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i7144b8981c9b457781eb7907f050e5f1_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTMtNC0xLTEtMA_db7a6a52-e8c3-4561-b92c-9896e508b1e7"
      unitRef="usd">61424000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i5a9be7cee5ec4fd9be9fa2e73eff96cf_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTMtNi0xLTEtMA_d511edd5-d69c-4c3d-bc13-75025cd26e30"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTMtOC0xLTEtMA_05295a77-f15a-4bc8-875a-4e932893ea68"
      unitRef="usd">94093000</us-gaap:MarketableSecurities>
    <us-gaap:DerivativeAssets
      contextRef="ia1f273bac97240f89bdc17a0e9c60164_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTQtMi0xLTEtMA_2a0c5f84-ba98-45f7-9df4-c117572dca19"
      unitRef="usd">0</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="i199d8012cdfc45f880bde4f62358b733_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTQtNC0xLTEtMA_c1dd804c-fef2-409a-b096-d354014f6ea8"
      unitRef="usd">144000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="ibfaae59a324f4a38ac0390337ca133de_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTQtNi0xLTEtMA_d487e497-9337-4d08-b925-4827f5fcc9f6"
      unitRef="usd">0</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="i48299e9912ad4118b96449675e783bd4_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTQtOC0xLTEtMA_6b653ce0-c226-4ff4-9985-45621fa4a7fb"
      unitRef="usd">144000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="ib26f1c31bfed44a7b777060c7786edb4_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTUtMi0xLTEtMA_81339a33-0af9-4a8a-94c0-468eb6c916be"
      unitRef="usd">0</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="i6fdc49bfe5094822b84e50642838474e_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTUtNC0xLTEtMA_96c5fcec-ca13-40c2-bd5f-20ba013b115c"
      unitRef="usd">745000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="i342792ee749a494da9570345238082da_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTUtNi0xLTEtMA_ea2901e9-eb15-47d7-ad3b-68d897455c4d"
      unitRef="usd">0</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="i13a31abba8c54278b30c172e00b5f42e_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTUtOC0xLTEtMA_2fd8a81d-7376-4518-bfdd-a384216a19d4"
      unitRef="usd">745000</us-gaap:DerivativeAssets>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i7885f9de272c46a38898e5b2b6cbeadd_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTYtMi0xLTEtMA_55c7c279-ce38-4cc6-8067-17a73393658a"
      unitRef="usd">72423000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i7144b8981c9b457781eb7907f050e5f1_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTYtNC0xLTEtMA_fdcdf2d6-c733-4064-adce-04836c59f3d9"
      unitRef="usd">62313000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i5a9be7cee5ec4fd9be9fa2e73eff96cf_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTYtNi0xLTEtMA_0c4210b0-f031-441f-a859-1b28799d1e63"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTYtOC0xLTEtMA_470a8a45-cb22-4a14-abc9-dc79501462ed"
      unitRef="usd">134736000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:DerivativeLiabilities
      contextRef="ifb9953b260ae40838020fbaa3bc54a54_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTgtMi0xLTEtMA_064dfbe1-1548-420f-9515-48483d58005a"
      unitRef="usd">0</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="i9346c5eb2b00412bbf91703e9e24c1b6_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTgtNC0xLTEtMA_705577a7-469b-474f-a579-4f4c63cebc33"
      unitRef="usd">100000</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="icaf47150e8b64314ac28c470e9ff45b2_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTgtNi0xLTEtMA_6fa295f0-c013-4b11-b2f6-f9f0d16e2f6b"
      unitRef="usd">0</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="ic8892fcf21d648e986b95d0d8a8b1378_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTgtOC0xLTEtMA_e1e8bfa3-479f-4e4f-b7e9-103ccc7d498a"
      unitRef="usd">100000</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="ib26f1c31bfed44a7b777060c7786edb4_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTktMi0xLTEtMA_1144f209-9089-4d52-a7eb-cc5cd2549e1a"
      unitRef="usd">0</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="i6fdc49bfe5094822b84e50642838474e_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTktNC0xLTEtMA_41dc64af-54cf-4a1e-bd09-ccfbb4c423b9"
      unitRef="usd">113000</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="i342792ee749a494da9570345238082da_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTktNi0xLTEtMA_3a6f7632-88be-4f96-b94a-45d68afd4d23"
      unitRef="usd">0</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="i13a31abba8c54278b30c172e00b5f42e_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMTktOC0xLTEtMA_d3c5c145-ac7a-43f5-8bc7-9ebc31be5fbe"
      unitRef="usd">113000</us-gaap:DerivativeLiabilities>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="i7885f9de272c46a38898e5b2b6cbeadd_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMjAtMi0xLTEtMA_e5c53794-0de0-4491-a88a-7dd9451eac04"
      unitRef="usd">0</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="i7144b8981c9b457781eb7907f050e5f1_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMjAtNC0xLTEtMA_323ea2e1-d32c-42e0-90b8-d4fd504a33d5"
      unitRef="usd">0</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="i5a9be7cee5ec4fd9be9fa2e73eff96cf_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMjAtNi0xLTEtMA_ca6ef502-2998-46ce-9692-6a032406a96c"
      unitRef="usd">3884000</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMjAtOC0xLTEtMA_9b9e147d-a2c4-4d18-9af2-169a729f6d39"
      unitRef="usd">3884000</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="i7885f9de272c46a38898e5b2b6cbeadd_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMjEtMi0xLTEtMA_93e5efd7-ed2b-4334-926f-b3042c77dbda"
      unitRef="usd">0</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="i7144b8981c9b457781eb7907f050e5f1_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMjEtNC0xLTEtMA_03d664a1-c6cc-4d03-8563-ef6ccdfa6747"
      unitRef="usd">213000</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="i5a9be7cee5ec4fd9be9fa2e73eff96cf_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMjEtNi0xLTEtMA_63a687ba-b3e7-48e8-bc54-e7175ffb8db0"
      unitRef="usd">3884000</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmMzYmM3NzExNTkwMDRjN2Y5N2UxN2M1ZTcwYmFmYTE3L3RhYmxlcmFuZ2U6YzNiYzc3MTE1OTAwNGM3Zjk3ZTE3YzVlNzBiYWZhMTdfMjEtOC0xLTEtMA_8091961d-d009-4eaa-baf6-f5ec80a12ff2"
      unitRef="usd">4097000</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i66caef15586448fea9736569b0183519_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMy0yLTEtMS0w_3f6b9fb3-2368-421e-892e-637058277073"
      unitRef="usd">43019000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i3951498c7cb949f3a19e0a998345885a_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMy00LTEtMS0w_20ee4763-6293-4026-a0aa-80224e42f8ee"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="icbad4b8f1ec34b5285e9ac865f168400_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMy02LTEtMS0w_523cbdbe-06ba-4928-a1fd-31e2d5561135"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="i7c488846135d4af3aca64c3281bf9e94_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMy04LTEtMS0w_862049e8-5ad3-45fe-9985-ef5e6f6f71a4"
      unitRef="usd">43019000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:MarketableSecurities
      contextRef="i3ac46dbef9b2494a8f8bfe37eda43601_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfNy0yLTEtMS0w_ed376190-871e-46e5-b497-d63199c056b4"
      unitRef="usd">40726000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="ib024db7786014f259e9a6aa19b39ccba_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfNy00LTEtMS0w_3547d539-85c8-44c2-aa84-2aaeb75ed02c"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="iffdf278b8e9d4fdd83f87f976f008abc_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfNy02LTEtMS0w_3c9db10d-409d-4b6a-99a5-e29f9ab03c3a"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i0fdfcd9576454a7684dea61db5dc6a09_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfNy04LTEtMS0w_ae0ee5df-5f77-423f-8649-67bcf3a2f2b3"
      unitRef="usd">40726000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="ie90e314e5c2342c3a72103b23021b470_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfOC0yLTEtMS0w_bd1e131c-e424-4b52-b645-304c7cdb6448"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="iadd867276cb64488870fae3b03ce0f8d_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfOC00LTEtMS0w_f991f96d-5a3d-4c37-95ac-653b542cd08d"
      unitRef="usd">2179000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="ieefc32debfcd4346a84c8cc01bdc0c19_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfOC02LTEtMS0w_ad92b925-3cc0-4fab-a595-a64ce87899a0"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i69197b029fd647eab431903dd357b183_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfOC04LTEtMS0w_2e41792e-398e-4d2f-a2ce-23d4bc9bbb9e"
      unitRef="usd">2179000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i826c13f7503f4c4c8d9c8537ae0daeac_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfOS0yLTEtMS0w_878824f0-d0ee-4b3b-92de-608128e54bea"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="if16a4006470e42feb581eabf235c1005_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfOS00LTEtMS0w_fbff7646-e7e0-4564-ba84-4ea22e4b5c4b"
      unitRef="usd">575000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="ibfec3676905d44fe9b156bb7dc84d2ed_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfOS02LTEtMS0w_fc5175e0-12f8-4079-8645-d971a5517a58"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i8fad041c01f84a6484a519e41ec2632f_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfOS04LTEtMS0w_994c5741-df6d-4132-b600-93cefbe5db2f"
      unitRef="usd">575000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="ib780fe1f91bd4cedb3287f12f71bafa0_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTAtMi0xLTEtMA_02be2bd2-d022-4918-8b5f-8ff6488c3a1e"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i22041ee55dab44b39a48fdeeeec97a18_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTAtNC0xLTEtMA_04cbe142-2cb1-4b9c-93f7-6ee4736db52f"
      unitRef="usd">24330000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="if7ef9c26f9144425bfb963ca243ada33_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTAtNi0xLTEtMA_4004ecff-0aee-4d3b-9b92-08cbdb7b3a47"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i8708037d51394da19f4b3468b4ee0394_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTAtOC0xLTEtMA_3fcc56bb-38b8-491d-aeef-3d722f5db758"
      unitRef="usd">24330000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="if425e69f00aa4c44870f48a1c48e6b67_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTItMi0xLTEtMA_965c7dd1-0282-4544-a297-3e40b289055b"
      unitRef="usd">40726000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="ie5589a6446ed4d7d8a4315ece55e84b4_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTItNC0xLTEtMA_96918d04-e031-4593-8eda-9f8bad552254"
      unitRef="usd">27084000</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="ib1c2c291548b4506bf724e9fc37b3099_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTItNi0xLTEtMA_e13a1fc4-849c-472c-a548-cca3880a769f"
      unitRef="usd">0</us-gaap:MarketableSecurities>
    <us-gaap:MarketableSecurities
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTItOC0xLTEtMA_01b7a70b-0490-4218-a9b3-d6c357e11d24"
      unitRef="usd">67810000</us-gaap:MarketableSecurities>
    <us-gaap:DerivativeAssets
      contextRef="iafd986cdb6c8480ba5063a9fa05344d4_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTMtMi0xLTEtMA_2b03b0ae-1c1b-4772-8402-2aea6815da60"
      unitRef="usd">0</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="ia931b26e563249a2bd0c872abc8e2fc7_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTMtNC0xLTEtMA_259cd2a2-814e-4bf3-87e0-63632bbd3fc5"
      unitRef="usd">1057000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="i1438f4502fd947978ae632cfa778e6c4_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTMtNi0xLTEtMA_1344056c-89ec-4add-85d7-796e320cf56e"
      unitRef="usd">0</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="if5b5c415a9d1484185de57538d5cde01_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTMtOC0xLTEtMA_d19591bf-b453-43b7-9617-506f8cdc26ff"
      unitRef="usd">1057000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="i20f414dff24540bba6daa384ee099878_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTQtMi0xLTEtMA_95625fa6-eebf-49e1-9e90-3b7e2962745d"
      unitRef="usd">0</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="ic7be3481579345b5b40f5d8520a0bfdf_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTQtNC0xLTEtMA_0172ffc6-0652-4b76-8b5e-3b8d5fd21dbd"
      unitRef="usd">57000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="i72cf10ac46064eaba16e3a534a800ed4_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTQtNi0xLTEtMA_6164b82a-13cb-498a-8a2f-cd2618afa9cb"
      unitRef="usd">0</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="ie1651b021d4f438f88707e0f1893cda3_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTQtOC0xLTEtMA_2599f189-a4bb-46c8-849b-b517892de533"
      unitRef="usd">57000</us-gaap:DerivativeAssets>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="if425e69f00aa4c44870f48a1c48e6b67_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTUtMi0xLTEtMA_b1237785-3256-491d-b4ee-b501effa8b40"
      unitRef="usd">83745000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="ie5589a6446ed4d7d8a4315ece55e84b4_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTUtNC0xLTEtMA_ab4edfbd-8d04-4d99-bcf3-0288a777595e"
      unitRef="usd">28198000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="ib1c2c291548b4506bf724e9fc37b3099_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTUtNi0xLTEtMA_489ae40e-8e6b-42b1-9974-c5d89cc6a830"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTUtOC0xLTEtMA_5dce78cc-d1d8-43af-84e9-9ed82528801a"
      unitRef="usd">111943000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:DerivativeLiabilities
      contextRef="i20f414dff24540bba6daa384ee099878_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTgtMi0xLTEtMzUw_794660fd-8766-41ae-af21-e54117f5fcd9"
      unitRef="usd">0</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="ic7be3481579345b5b40f5d8520a0bfdf_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTgtNC0xLTEtMzUw_807763f1-07ae-4797-88ae-e6c5f96ace6d"
      unitRef="usd">87000</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="i72cf10ac46064eaba16e3a534a800ed4_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTgtNi0xLTEtMzUw_303c438a-19f1-445d-ab63-70fea942f93a"
      unitRef="usd">0</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="ie1651b021d4f438f88707e0f1893cda3_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTgtOC0xLTEtMzUw_c575e52e-a1d3-4a0e-ab2d-2cc105a588f9"
      unitRef="usd">87000</us-gaap:DerivativeLiabilities>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="if425e69f00aa4c44870f48a1c48e6b67_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTgtMi0xLTEtMA_42f03a55-29fb-4d59-8490-58154b8b1625"
      unitRef="usd">0</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="ie5589a6446ed4d7d8a4315ece55e84b4_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTgtNC0xLTEtMA_1b906fac-9941-4d1d-af2d-83cfe4d3ca34"
      unitRef="usd">0</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="ib1c2c291548b4506bf724e9fc37b3099_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTgtNi0xLTEtMA_1e698033-470a-4419-86ab-c64c6889ada7"
      unitRef="usd">4012000</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTgtOC0xLTEtMA_df0e117a-de2a-4843-a313-15bd49bc317c"
      unitRef="usd">4012000</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="if425e69f00aa4c44870f48a1c48e6b67_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTktMi0xLTEtMA_f9fc2eea-fd98-4201-9231-a81e27f03d59"
      unitRef="usd">0</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="ie5589a6446ed4d7d8a4315ece55e84b4_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTktNC0xLTEtMA_c7ff9a20-3eef-4cc4-b8e9-6ec21d846f7a"
      unitRef="usd">87000</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="ib1c2c291548b4506bf724e9fc37b3099_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTktNi0xLTEtMA_6750a3e1-eff2-498b-b143-a9f75f65ca28"
      unitRef="usd">4012000</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjAxZjgxYTk5ODNjMzQyZDQ4ZDI2ZWRlMTM4M2UzNzZjL3RhYmxlcmFuZ2U6MDFmODFhOTk4M2MzNDJkNDhkMjZlZGUxMzgzZTM3NmNfMTktOC0xLTEtMA_bcbb625a-e3e7-4ebc-bca4-47e8e7715346"
      unitRef="usd">4099000</us-gaap:LiabilitiesFairValueDisclosure>
    <form:ContingentConsiderationCalculationAmountMultipleOfEBIT
      contextRef="i6990a2aeb0d84933a52a08cd48837eb6_D20191009-20191009"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfMzA1Mg_2e1db099-57ae-4ad1-9028-ff6ccd0e65e0"
      unitRef="number">1.5</form:ContingentConsiderationCalculationAmountMultipleOfEBIT>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="i2142b0f687f145299057abe4bd16bfa6_I20191009"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfMzExOQ_2b1ee34b-5d63-4e23-8d0d-8186ef34a731"
      unitRef="eur">10300000</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfMzU2NQ_337ed44d-e838-4af6-a427-1d2fcdb8ec40"
      unitRef="usd">3900000</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfODA0NA_ab6bb194-7c00-44e7-aac4-7b781e4dc6f5">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The impact of the interest rate swaps on our Condensed Consolidated Statements of Income was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:36.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.595%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.969%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.605%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Amount of Gain or (Loss) Recognized in OCI on Derivative (Effective Portion)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Location of Gain or (Loss) Reclassified from Accumulated OCI into Income (Effective Portion)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Amount of Gain or (Loss) Reclassified from Accumulated OCI into Income (Effective Portion)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Location of Gain or (Loss) Recognized in Income on Derivative (Ineffective Portion)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;Amount of Gain or (Loss) Recognized in Income on Derivative (Ineffective Portion)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;624&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(38)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended March 28, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(96)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;22&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax
      contextRef="iadf2c82018d340d88770a032d367f21e_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjk5MmZjNjNlMGM1ZjQ5ZWM5MmQxOWRlNzYxMGFmYTEwL3RhYmxlcmFuZ2U6OTkyZmM2M2UwYzVmNDllYzkyZDE5ZGU3NjEwYWZhMTBfMS0yLTEtMS0w_495b629e-c8e9-47ea-ae9c-29c3a0849440"
      unitRef="usd">624000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax
      contextRef="i05cfd20b4db7493c86d0e3e642e17793_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjk5MmZjNjNlMGM1ZjQ5ZWM5MmQxOWRlNzYxMGFmYTEwL3RhYmxlcmFuZ2U6OTkyZmM2M2UwYzVmNDllYzkyZDE5ZGU3NjEwYWZhMTBfMS02LTEtMS0w_3ea5ea3f-4756-4c7c-ad5d-10c5b1cd6b1f"
      unitRef="usd">-38000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax
      contextRef="i090130968f6b4bdd87a9441ed66661b2_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjk5MmZjNjNlMGM1ZjQ5ZWM5MmQxOWRlNzYxMGFmYTEwL3RhYmxlcmFuZ2U6OTkyZmM2M2UwYzVmNDllYzkyZDE5ZGU3NjEwYWZhMTBfMi0yLTEtMS0w_2e90fb8c-cf16-4851-997c-cd875c6f0877"
      unitRef="usd">-96000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax
      contextRef="i05d42ee6296445d58b8575dcf4f29931_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjk5MmZjNjNlMGM1ZjQ5ZWM5MmQxOWRlNzYxMGFmYTEwL3RhYmxlcmFuZ2U6OTkyZmM2M2UwYzVmNDllYzkyZDE5ZGU3NjEwYWZhMTBfMi02LTEtMS0w_53dbc011-a13f-4c17-af68-067177f04b8b"
      unitRef="usd">22000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax>
    <us-gaap:ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfODAzMA_c6106f56-c7c6-4b51-bce4-b681bea4c1db">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides information about our foreign currency forward contracts outstanding as of March&#160;27, 2021 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.854%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.345%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.385%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.248%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.385%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.251%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Currency&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Contract Position&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Contract Amount&lt;br/&gt;(Local Currency)&lt;br/&gt;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Contract Amount&lt;br/&gt;(U.S. Dollars)&lt;br/&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Euro Dollar&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Buy&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(10,141)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(12,025)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Euro Dollar&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sell&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,043&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,026&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Japanese Yen&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Buy&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,971,765)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(17,977)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Korean Won&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sell&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,129,743&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,767&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Taiwan Dollar&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sell&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,972&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;279&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total USD notional amount of outstanding foreign exchange contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(13,930)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The impact of foreign exchange derivative contracts designated as cash flow hedges on our Condensed Consolidated Statements of Income was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:42.467%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:28.285%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.332%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Amount of Gain (Loss) Recognized in Accumulated OCI on Derivative &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Location of Gain (Loss) Reclassified from Accumulated OCI into Income &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Amount of Gain (Loss) Reclassified from Accumulated OCI into Income &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(526)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;82&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;362&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended March 28, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenues&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(120)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(18)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(43)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(181)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock>
    <us-gaap:DerivativeNotionalAmount
      contextRef="i1ff9acf7e74f462a9ac8974a00e30852_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfMS00LTEtMS0w_4a4901de-4bd5-4f32-bfee-05ee93ef1e0a"
      unitRef="eur">10141000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeNotionalAmount
      contextRef="i1ff9acf7e74f462a9ac8974a00e30852_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfMS02LTEtMS0w_0b6185c1-9143-41e0-9f33-c17fe75804a6"
      unitRef="usd">12025000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeNotionalAmount
      contextRef="ic926e43ea3034c338f2f1193109969da_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfMi00LTEtMS0w_e942121c-8d56-4d26-ae58-7d9b51ae14a7"
      unitRef="eur">11043000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeNotionalAmount
      contextRef="ic926e43ea3034c338f2f1193109969da_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfMi02LTEtMS0w_0c948dd1-a1a5-4cd5-a4a9-438ba51182d8"
      unitRef="usd">13026000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeNotionalAmount
      contextRef="i71bee5004c77402fbdca0a87dc12dc36_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfMy00LTEtMS0w_3fde4bf3-2f72-4152-8cb3-282ef86b848a"
      unitRef="jpy">1971765000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeNotionalAmount
      contextRef="i71bee5004c77402fbdca0a87dc12dc36_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfMy02LTEtMS0w_4c367e1f-023c-46c2-942f-1d00e8cb92ef"
      unitRef="usd">17977000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeNotionalAmount
      contextRef="i30ce92d32c3a472db9133538bce6a64e_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfNC00LTEtMS0w_c094a67f-6974-4b13-974b-239c66be3cbb"
      unitRef="krw">3129743000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeNotionalAmount
      contextRef="i30ce92d32c3a472db9133538bce6a64e_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfNC02LTEtMS0w_2a112ea0-47d8-48a8-831a-c7e6af208a7b"
      unitRef="usd">2767000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeNotionalAmount
      contextRef="ia07894792f2a45cd8ea42bf6a6de0ac9_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfNS00LTEtMS0w_36e61458-0d15-410f-8c88-b32631c40869"
      unitRef="twd">7972000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeNotionalAmount
      contextRef="ia07894792f2a45cd8ea42bf6a6de0ac9_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfNS02LTEtMS0w_b99c3f48-9109-45a9-842d-524843e2ad4e"
      unitRef="usd">279000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeNotionalAmount
      contextRef="i29f6a021e44143acb33d3256fd42ec82_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjM5ZTNjMjdlMGU0ODRkNDVhMzA5NzA5ZDQwMzg5YTY3L3RhYmxlcmFuZ2U6MzllM2MyN2UwZTQ4NGQ0NWEzMDk3MDlkNDAzODlhNjdfNy02LTEtMS0w_a60d63f4-8e74-4d79-a9b0-b20af329bf31"
      unitRef="usd">13930000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfODA0MA_56b31145-42b9-47ea-a57b-388df70a2547">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The impact of foreign exchange derivative contracts not designated as cash flow hedges on our Condensed Consolidated Statements of Income was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:37.350%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:33.549%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.180%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.331%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Amount of Gain (Loss) Recognized on Derivatives&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Derivatives Not Designated as Hedging Instruments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Location of Gain (Loss) Recognized on Derivatives&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 28,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foreign exchange forward contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other income (expense), net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,288&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(115)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock>
    <us-gaap:DerivativeGainLossOnDerivativeNet
      contextRef="i41f5ac4879b947f5882bf744929e0d10_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjIyOWU3M2FhYWQ4ZjQ0YTg4NzdmZWUyZTEzZDAyYTI4L3RhYmxlcmFuZ2U6MjI5ZTczYWFhZDhmNDRhODg3N2ZlZTJlMTNkMDJhMjhfMy00LTEtMS0w_fe43d8b3-477c-47f1-aca9-46e924b067b7"
      unitRef="usd">1288000</us-gaap:DerivativeGainLossOnDerivativeNet>
    <us-gaap:DerivativeGainLossOnDerivativeNet
      contextRef="i855be42e47a54624a24482d75efbd5e5_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOjIyOWU3M2FhYWQ4ZjQ0YTg4NzdmZWUyZTEzZDAyYTI4L3RhYmxlcmFuZ2U6MjI5ZTczYWFhZDhmNDRhODg3N2ZlZTJlMTNkMDJhMjhfMy02LTEtMS0w_d0b8b214-024b-49cd-9849-dcf8ecb55f06"
      unitRef="usd">-115000</us-gaap:DerivativeGainLossOnDerivativeNet>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax
      contextRef="ib9af7ff396304640b3355d49e0973eb0_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfMS0yLTEtMS0w_f7b96d50-a12c-4098-ae9c-f0a0e6b97169"
      unitRef="usd">-526000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax
      contextRef="i858922598a254445afd9b4bdd08eb539_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfMS02LTEtMS0w_e7217c8b-3f3d-46e1-a717-b7a4d62efaf6"
      unitRef="usd">250000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax
      contextRef="i57c021cbe46b4d1d8417533c34518b6d_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfMi02LTEtMS0w_fd027595-0d82-4405-b245-8ae63a9e2338"
      unitRef="usd">30000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax
      contextRef="i65f05b5fd52044c78876707c5ac38fb3_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfMy02LTEtMS0w_65e9d0e7-2c62-4e02-84e3-725ca552458c"
      unitRef="usd">82000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax
      contextRef="ib9af7ff396304640b3355d49e0973eb0_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfNC02LTEtMS0w_6a05920e-cd09-40a2-9138-95c2d9b6438d"
      unitRef="usd">362000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax
      contextRef="iab97b4d4a8d54ea6a62c1cf1466a5227_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfNi0yLTEtMS0w_d76b9b78-6a33-4306-8fb1-b527705955b0"
      unitRef="usd">-3000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax
      contextRef="i95df57ad055943a493228cd16b7d5caf_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfNi02LTEtMS0w_c2307933-6ca5-496d-a6cd-4fb64e17c6c6"
      unitRef="usd">-120000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax
      contextRef="ib12af2ac56894cf3990e1ac2d88df7f5_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfNy02LTEtMS0w_32923bc6-bcc1-4251-a3db-ae3933049c6c"
      unitRef="usd">-18000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax
      contextRef="idf711117c5ea427280ebc4526aec164a_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfOC02LTEtMS0w_f74698e6-33a5-4bca-9a45-779abd971a9b"
      unitRef="usd">-43000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax>
    <us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax
      contextRef="iab97b4d4a8d54ea6a62c1cf1466a5227_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RhYmxlOmJjYzMzODQ5ZTBhNDQwZjliOTJmZjJmYjg0NjVlNmMxL3RhYmxlcmFuZ2U6YmNjMzM4NDllMGE0NDBmOWI5MmZmMmZiODQ2NWU2YzFfOS02LTEtMS0w_20a6ed67-009c-4061-8cd7-de035d97fc59"
      unitRef="usd">-181000</us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="i104a76d3d05e44109700c142c3f865fb_I20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfNzkxOQ_13d44ac5-5045-43c1-8dc2-57c98ea725db"
      unitRef="usd">0</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="if72f6c99cda54fccb7c253fb2c11125a_I20200328"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfNzkxOQ_8c7289f2-bc89-4781-a562-a2ce62212b0f"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="i104a76d3d05e44109700c142c3f865fb_I20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfNzkxOQ_975c740d-b5f2-4858-9822-0ec918af97b5"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="if72f6c99cda54fccb7c253fb2c11125a_I20200328"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81NS9mcmFnOjFiNTVkNjFkNzk1ZTRmYzRhYTEzODkzNWFjMDZkZWRiL3RleHRyZWdpb246MWI1NWQ2MWQ3OTVlNGZjNGFhMTM4OTM1YWMwNmRlZGJfNzkxOQ_c7c71885-1982-4166-9d85-51c7540d8311"
      unitRef="usd">0</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:ProductWarrantyDisclosureTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RleHRyZWdpb246NzJiOTBlNGRlNWFkNGIzMmI0ZTZkZjE3NGQ3ZmQ5OWVfMTE4MQ_ad2cbe82-ea61-4df7-b22e-4273c8ff4798">Warranty&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We offer warranties on certain products and record a liability for the estimated future costs associated with warranty claims at the time revenue is recognized. The warranty liability is based upon historical experience and our estimate of the level of future costs. While we engage in product quality programs and processes, our warranty obligation is affected by product failure rates, &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;material usage and service delivery costs. We continuously monitor product returns for warranty and maintain a reserve for the related expenses based upon our historical experience and any specifically identified failures. As we sell new products to our customers, we must exercise considerable judgment in estimating the expected failure rates. This estimating process is based on historical experience of similar products, as well as various other assumptions that we believe to be reasonable under the circumstances. We provide for the estimated cost of product warranties at the time revenue is recognized as a component of Cost of revenues in our Condensed Consolidated Statement of Income.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Changes in our warranty liability were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 28,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Balance at beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,942&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accruals&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,374&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;660&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Settlements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,573)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(684)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Balance at end of period&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,719&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ProductWarrantyDisclosureTextBlock>
    <us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RleHRyZWdpb246NzJiOTBlNGRlNWFkNGIzMmI0ZTZkZjE3NGQ3ZmQ5OWVfMTE4Mg_393fbd23-81d4-4364-bf07-e9b7ea7f82b9">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Changes in our warranty liability were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 28,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Balance at beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,942&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accruals&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,374&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;660&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Settlements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,573)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(684)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Balance at end of period&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,719&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RhYmxlOmY1NWRkMjNiNTZhMDQyMTU5OGNkM2E0NzIwMmJhZWJmL3RhYmxlcmFuZ2U6ZjU1ZGQyM2I1NmEwNDIxNTk4Y2QzYTQ3MjAyYmFlYmZfMi0xLTEtMS0w_b53d81ae-6666-4ebb-8f7c-7bf434f5023a"
      unitRef="usd">3918000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i1eeff05d49e94a6396339ea847351869_I20191228"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RhYmxlOmY1NWRkMjNiNTZhMDQyMTU5OGNkM2E0NzIwMmJhZWJmL3RhYmxlcmFuZ2U6ZjU1ZGQyM2I1NmEwNDIxNTk4Y2QzYTQ3MjAyYmFlYmZfMi0zLTEtMS0w_b8f3eae8-bbdd-40ae-b3c2-963896669766"
      unitRef="usd">1942000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrualWarrantiesIssued
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RhYmxlOmY1NWRkMjNiNTZhMDQyMTU5OGNkM2E0NzIwMmJhZWJmL3RhYmxlcmFuZ2U6ZjU1ZGQyM2I1NmEwNDIxNTk4Y2QzYTQ3MjAyYmFlYmZfMy0xLTEtMS0w_e4676571-536f-483a-9e44-509d625d49ef"
      unitRef="usd">1374000</us-gaap:ProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:ProductWarrantyAccrualWarrantiesIssued
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RhYmxlOmY1NWRkMjNiNTZhMDQyMTU5OGNkM2E0NzIwMmJhZWJmL3RhYmxlcmFuZ2U6ZjU1ZGQyM2I1NmEwNDIxNTk4Y2QzYTQ3MjAyYmFlYmZfMy0zLTEtMS0w_58c3e9bd-0f32-4994-9750-f55b74cabe55"
      unitRef="usd">660000</us-gaap:ProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:ProductWarrantyAccrualPayments
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RhYmxlOmY1NWRkMjNiNTZhMDQyMTU5OGNkM2E0NzIwMmJhZWJmL3RhYmxlcmFuZ2U6ZjU1ZGQyM2I1NmEwNDIxNTk4Y2QzYTQ3MjAyYmFlYmZfNC0xLTEtMS0w_baac641c-c85e-4428-8123-de2c56f09a8f"
      unitRef="usd">1573000</us-gaap:ProductWarrantyAccrualPayments>
    <us-gaap:ProductWarrantyAccrualPayments
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RhYmxlOmY1NWRkMjNiNTZhMDQyMTU5OGNkM2E0NzIwMmJhZWJmL3RhYmxlcmFuZ2U6ZjU1ZGQyM2I1NmEwNDIxNTk4Y2QzYTQ3MjAyYmFlYmZfNC0zLTEtMS0w_0511fc82-6c18-44f2-8108-fef76c8b1564"
      unitRef="usd">684000</us-gaap:ProductWarrantyAccrualPayments>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RhYmxlOmY1NWRkMjNiNTZhMDQyMTU5OGNkM2E0NzIwMmJhZWJmL3RhYmxlcmFuZ2U6ZjU1ZGQyM2I1NmEwNDIxNTk4Y2QzYTQ3MjAyYmFlYmZfNS0xLTEtMS0w_d352c1fd-db09-44fb-baed-b46afa6142fb"
      unitRef="usd">3719000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i544b840724324a999b22494d0651898a_I20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV81OC9mcmFnOjcyYjkwZTRkZTVhZDRiMzJiNGU2ZGYxNzRkN2ZkOTllL3RhYmxlOmY1NWRkMjNiNTZhMDQyMTU5OGNkM2E0NzIwMmJhZWJmL3RhYmxlcmFuZ2U6ZjU1ZGQyM2I1NmEwNDIxNTk4Y2QzYTQ3MjAyYmFlYmZfNS0zLTEtMS0w_593985e3-3e2b-4946-8884-3fb5968c4810"
      unitRef="usd">1918000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RleHRyZWdpb246OTM0MDRlYzkwNzBlNDk0OWE2MmUxNWEzZDlhODkwOGVfMTMx_ad5d26d0-49e7-42f6-9e31-1a021b2b6b6a">Property, Plant and Equipment, net&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property, plant and equipment, net consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.461%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 26,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Land&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,751&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,751&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Machinery and equipment &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;233,357&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;226,185&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Computer equipment and software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43,839&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;36,361&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,925&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,894&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Leasehold improvements &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;80,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;79,144&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sub-total &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;368,883&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;353,335&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: Accumulated depreciation and amortization &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(298,865)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(294,468)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net, property, plant and equipment &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;70,018&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;58,867&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Construction-in-process&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;42,294&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;45,236&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;112,312&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;104,103&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RleHRyZWdpb246OTM0MDRlYzkwNzBlNDk0OWE2MmUxNWEzZDlhODkwOGVfMTMy_f5a3d6b4-0123-4ff8-836c-ee95b5bc629a">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property, plant and equipment, net consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.461%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 26,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Land&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,751&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,751&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Machinery and equipment &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;233,357&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;226,185&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Computer equipment and software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43,839&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;36,361&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,925&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,894&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Leasehold improvements &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;80,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;79,144&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Sub-total &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;368,883&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;353,335&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: Accumulated depreciation and amortization &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(298,865)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(294,468)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net, property, plant and equipment &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;70,018&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;58,867&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Construction-in-process&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;42,294&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;45,236&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;112,312&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;104,103&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i748bc4ea3d26497da8a4181447809083_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfMS0xLTEtMS0w_aa77a851-76c8-4eba-bae8-5702dd9fdb11"
      unitRef="usd">4751000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ib556c791343643a2b852ced1d6bc6139_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfMS0zLTEtMS0w_83b42997-d931-41e3-953e-23b395e45d99"
      unitRef="usd">4751000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ib8c908da8479474d8c6d00efea213bb8_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfMi0xLTEtMS0w_cbda3631-b2d8-4235-80bc-0cae1f8b469a"
      unitRef="usd">233357000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ib5010210b88e428c83f009dd6f0543ed_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfMi0zLTEtMS0w_c630cdf8-696b-4ba8-852d-df439bd9ca3a"
      unitRef="usd">226185000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i7ceedab9d7b3401c8673c48e522712cc_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfMy0xLTEtMS0w_b099ee4e-3ce5-4b39-b1c8-08d215765a29"
      unitRef="usd">43839000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i22c4b1b8854f4d74b3bc20b665ebe325_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfMy0zLTEtMS0w_63f17e0e-4229-467e-b12c-4617fb9f9cde"
      unitRef="usd">36361000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i63feb9a9bc9048c18f431a4bcc814a1c_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfNC0xLTEtMS0w_abb084e3-1ea3-4cd1-86fa-ad32bf9103a2"
      unitRef="usd">6925000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i0894b5d61f404b368720a7e152384e6e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfNC0zLTEtMS0w_c7bfd773-b367-4832-b296-08600acaf9f7"
      unitRef="usd">6894000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i8f10ce656749423b840c7a310508812a_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfNS0xLTEtMS0w_607b0834-f16c-4c9f-8073-852fbe9c2ff1"
      unitRef="usd">80011000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="if5590f5fa23f460786af19183085bf1f_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfNS0zLTEtMS0w_d5ead4c0-9d54-4af1-b8c2-252dbf0e3f0f"
      unitRef="usd">79144000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfNi0xLTEtMS0w_891c1e46-0de7-4cf7-aa83-aad939740526"
      unitRef="usd">368883000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfNi0zLTEtMS0w_061ef6d8-0fc5-4d05-9952-210c76ab0232"
      unitRef="usd">353335000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfNy0xLTEtMS0w_a64db409-2d32-4e89-9f20-78be4989e3cd"
      unitRef="usd">298865000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfNy0zLTEtMS0w_5e7d6242-fe79-44c4-b260-1688647d6229"
      unitRef="usd">294468000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <form:PropertyPlantAndEquipmentNetExcludesConstructionInProgress
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfOC0xLTEtMS0w_aff19521-207b-4f91-9ddf-ced5d10e15db"
      unitRef="usd">70018000</form:PropertyPlantAndEquipmentNetExcludesConstructionInProgress>
    <form:PropertyPlantAndEquipmentNetExcludesConstructionInProgress
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfOC0zLTEtMS0w_7b549c59-b461-4b2a-95e2-662b268120fe"
      unitRef="usd">58867000</form:PropertyPlantAndEquipmentNetExcludesConstructionInProgress>
    <us-gaap:ConstructionInProgressGross
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfOS0xLTEtMS0w_0dc6a3c3-0e3e-4766-80f4-03d92f6ebab3"
      unitRef="usd">42294000</us-gaap:ConstructionInProgressGross>
    <us-gaap:ConstructionInProgressGross
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfOS0zLTEtMS0w_1e8a68f9-760f-4552-9fcb-b575df6310b6"
      unitRef="usd">45236000</us-gaap:ConstructionInProgressGross>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfMTAtMS0xLTEtMA_39df038b-3f91-4b01-a651-9a435c3999ce"
      unitRef="usd">112312000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82MS9mcmFnOjkzNDA0ZWM5MDcwZTQ5NDlhNjJlMTVhM2Q5YTg5MDhlL3RhYmxlOjUxYjlkYWMxOWFmMDRkM2Y4MWRlNWFhNzBkOTljODlhL3RhYmxlcmFuZ2U6NTFiOWRhYzE5YWYwNGQzZjgxZGU1YWE3MGQ5OWM4OWFfMTAtMy0xLTEtMA_7d7fd687-b347-4d5d-b31d-ca019d02c472"
      unitRef="usd">104103000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMTQxMA_c4321760-fdf0-49e7-906c-20898bc491b4">Stockholders&#x2019; Equity and Stock-Based Compensation&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Common Stock Repurchase Program&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On October 26, 2020, our Board of Directors authorized a program to repurchase up to $50&#160;million of outstanding common stock to offset potential dilution from issuances of common stock under our stock-based compensation plans. The share repurchase program will expire on October 28, 2022. During the three months ended March&#160;27, 2021, we repurchased 136,402 shares of common stock for $5.7 million and, as of March&#160;27, 2021, $44.3 million remained available for future repurchases.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our policy related to repurchases of our common stock is to charge the excess of cost over par value to additional paid-in capital once the shares are retired. All repurchases were made in compliance with Rule 10b-18 under the Securities Exchange Act of 1934, as amended.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Restricted Stock Units&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Restricted stock unit (&#x201c;RSU&#x201d;) activity under our equity incentive plan was as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Weighted Average Grant Date Fair Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;RSUs at December 26, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,840,922&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;19.80&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Awards granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,765&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;46.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Awards vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(67,635)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16.38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Awards forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(11,140)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;21.21&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;RSUs at March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,770,912&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;19.96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Performance Restricted Stock Units&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We may grant Performance RSUs (&#x201c;PRSUs&#x201d;) to certain executives, which vest based upon us achieving certain market performance criteria. There were no PRSUs granted during the three months ended March&#160;27, 2021. PRSUs are included as part of the RSU activity above.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Stock Options&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock option activity under our equity incentive plan was as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:46.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.527%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.272%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.527%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.272%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.527%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.272%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.527%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.278%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Options Outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Weighted Average Exercise Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Weighted Average Remaining Contractual Life in Years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Aggregate Intrinsic Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Outstanding at December 26, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;106,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.35&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Options exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(50,000)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.44&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Outstanding at March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;56,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.92&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,078,820&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Vested and expected to vest at March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;56,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.92&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,078,820&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Exercisable at March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;56,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.92&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,078,820&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Employee Stock Purchase Plan &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Information related to activity under our Employee Stock Purchase Plan (&#x201c;ESPP&#x201d;) was as follows: &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:85.869%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.385%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.346%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares issued&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;228,784&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average per share purchase price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;22.14&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average per share discount from the fair value of our common stock on the date of issuance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(18.73)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Stock-Based Compensation&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock-based compensation was included in our Condensed Consolidated Statements of Income as follows (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 28,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenues&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,335&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;937&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,689&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,439&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,053&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,247&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total stock-based compensation&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,077&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,623&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Unrecognized Compensation Costs&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;At March&#160;27, 2021, the unrecognized stock-based compensation was as follows (dollars in thousands):&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unrecognized Expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Average Expected Recognition Period in Years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Restricted stock units&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,429&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.03&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Performance restricted stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,719&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1.93&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Employee stock purchase plan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;973&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.86&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total unrecognized stock-based compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;36,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1.99&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <us-gaap:StockRepurchaseProgramAuthorizedAmount1
      contextRef="i83a1c50d70a44ceead8fd2607534264c_I20201026"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMjE5OTAyMzI1ODgxNg_dc7d654c-a6bf-4654-b202-fcf78bfe15eb"
      unitRef="usd">50000000</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="i8fa8e4913bce435f98a1ae9ddcd3122e_D20201227-20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMTA5OTUxMTYzMDE4Mw_f020294b-b015-415c-93ea-1c5ed0cc9df0"
      unitRef="shares">136402</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMTA5OTUxMTYzMDIwMA_2a90845c-cd53-4d3b-9cd6-7b7b7d0e7ba4"
      unitRef="usd">5700000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1
      contextRef="ia53c8599a7ab4684940e34c0f363d1f8_I20210327"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMTA5OTUxMTYzMDI0Mw_9ebef58f-4292-4dbd-955d-78325bff5175"
      unitRef="usd">44300000</us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1>
    <us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMTQwMg_56734229-b34e-48d6-a0f0-0feae9a74fd0">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Restricted stock unit (&#x201c;RSU&#x201d;) activity under our equity incentive plan was as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Weighted Average Grant Date Fair Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;RSUs at December 26, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,840,922&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;19.80&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Awards granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,765&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;46.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Awards vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(67,635)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16.38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Awards forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(11,140)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;21.21&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;RSUs at March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,770,912&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;19.96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="ifb72ab70068e414e836189f85f45fc41_I20201226"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfMS0xLTEtMS0w_c90f4b52-31a0-4da3-ad66-48bbab0966de"
      unitRef="shares">2840922</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="ifb72ab70068e414e836189f85f45fc41_I20201226"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfMS0zLTEtMS0w_b103ac46-330a-42dd-9a43-3dc42a6bc4b0"
      unitRef="usdPerShare">19.80</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i9fc06d57d16a4e70b6f7c2ac52ee8fe0_D20201227-20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfMi0xLTEtMS0w_6ca50bd9-8322-402f-a637-81e835e76067"
      unitRef="shares">8765</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i9fc06d57d16a4e70b6f7c2ac52ee8fe0_D20201227-20210327"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfMi0zLTEtMS0w_5e9121c9-73c0-408e-83f8-5b2adc6f52a4"
      unitRef="usdPerShare">46.25</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="i9fc06d57d16a4e70b6f7c2ac52ee8fe0_D20201227-20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfMy0xLTEtMS0w_e49b70e9-c867-45ab-a31b-743f92359232"
      unitRef="shares">67635</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="i9fc06d57d16a4e70b6f7c2ac52ee8fe0_D20201227-20210327"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfMy0zLTEtMS0w_e1de09ed-144c-445a-97f8-4d462c123974"
      unitRef="usdPerShare">16.38</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="i9fc06d57d16a4e70b6f7c2ac52ee8fe0_D20201227-20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfNC0xLTEtMS0w_950906f6-c024-483b-b946-bb828d7793a8"
      unitRef="shares">11140</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="i9fc06d57d16a4e70b6f7c2ac52ee8fe0_D20201227-20210327"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfNC0zLTEtMS0w_f4e4f707-ea16-4754-bede-027d3162bfca"
      unitRef="usdPerShare">21.21</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i159cea8e929f4890970bb676424e3f92_I20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfNS0xLTEtMS0w_a97c53c9-4ccd-430c-85ee-50d9cb084620"
      unitRef="shares">2770912</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i159cea8e929f4890970bb676424e3f92_I20210327"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmYyNzEyMDhmMzU1ODRmNmY5YWQ1OWYxNjQ4NzQyZGEzL3RhYmxlcmFuZ2U6ZjI3MTIwOGYzNTU4NGY2ZjlhZDU5ZjE2NDg3NDJkYTNfNS0zLTEtMS0w_145545e9-3dde-42c7-84d8-7fd10f2e3592"
      unitRef="usdPerShare">19.96</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ie1e912506c2641f3bb7d9d4001735277_D20201227-20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMjE5OTAyMzI1ODgyOA_9addcb7a-e75a-451a-81e5-14e1921fa8d1"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMTQxNg_c2fdc399-4d29-47e3-906f-f834e72089c7">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock option activity under our equity incentive plan was as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:46.498%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.527%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.272%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.527%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.272%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.527%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.272%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.527%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.278%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Options Outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Weighted Average Exercise Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Weighted Average Remaining Contractual Life in Years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Aggregate Intrinsic Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Outstanding at December 26, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;106,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.35&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Options exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(50,000)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.44&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Outstanding at March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;56,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.92&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,078,820&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Vested and expected to vest at March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;56,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.92&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,078,820&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Exercisable at March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;56,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8.28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.92&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,078,820&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i870d2a11d24245099f539695bcdec5d2_I20201226"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfMS0yLTEtMS0w_7735bf1d-7cb7-45af-b8d9-56e9128b1fc7"
      unitRef="shares">106000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i870d2a11d24245099f539695bcdec5d2_I20201226"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfMS00LTEtMS0w_33f0d391-0ce7-4f13-9feb-a1f72487353d"
      unitRef="usdPerShare">8.35</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="ie1e912506c2641f3bb7d9d4001735277_D20201227-20210327"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfMy0yLTEtMS0w_3e8d5f42-48a2-473a-97de-ea0abe1d366d"
      unitRef="shares">50000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="ie1e912506c2641f3bb7d9d4001735277_D20201227-20210327"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfMy00LTEtMS0w_b2e1f3bc-5869-449b-a2fa-0f270c9afd99"
      unitRef="usdPerShare">8.44</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i387b92b675da43d5bf75aacb5290ba08_I20210327"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNS0yLTEtMS0w_f7af73ef-d928-476f-89e3-db5d7e6c678c"
      unitRef="shares">56000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i387b92b675da43d5bf75aacb5290ba08_I20210327"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNS00LTEtMS0w_f63840df-71b4-4f1c-83e3-c89561865af7"
      unitRef="usdPerShare">8.28</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="ie1e912506c2641f3bb7d9d4001735277_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNS02LTEtMS0w_5420c5b2-d9ba-4bd4-839a-bf0fe2a43677">P0Y11M1D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="i387b92b675da43d5bf75aacb5290ba08_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNS04LTEtMS0w_0aa622e1-846e-4063-b835-6e3be1792e34"
      unitRef="usd">2078820000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber
      contextRef="i387b92b675da43d5bf75aacb5290ba08_I20210327"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNi0yLTEtMS0w_6b3b6998-3704-4858-ba77-4d28b88b65bb"
      unitRef="shares">56000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice
      contextRef="i387b92b675da43d5bf75aacb5290ba08_I20210327"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNi00LTEtMS0w_14054025-8c66-40f4-a1a1-c33802c2be98"
      unitRef="usdPerShare">8.28</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1
      contextRef="ie1e912506c2641f3bb7d9d4001735277_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNi02LTEtMS0w_dea530cf-cf5e-49bf-b4d9-af3c65c85ca3">P0Y11M1D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue
      contextRef="i387b92b675da43d5bf75aacb5290ba08_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNi04LTEtMS0w_f9e012c6-3afb-4e66-a67e-64bd74ffcfee"
      unitRef="usd">2078820000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="i387b92b675da43d5bf75aacb5290ba08_I20210327"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNy0yLTEtMS0w_9687b129-2acb-4700-af0a-bd84638dbc40"
      unitRef="shares">56000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="i387b92b675da43d5bf75aacb5290ba08_I20210327"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNy00LTEtMS0w_2a2a46f4-727e-49a7-bf83-58b1d709e175"
      unitRef="usdPerShare">8.28</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
      contextRef="ie1e912506c2641f3bb7d9d4001735277_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNy02LTEtMS0w_00bf06c7-e1d9-4c05-9ed3-5be306166b80">P0Y11M1D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
      contextRef="i387b92b675da43d5bf75aacb5290ba08_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjFjNmNlZGE4ZTZkYzQxZDBiZWM2OTk1ZjAzY2YxNjEwL3RhYmxlcmFuZ2U6MWM2Y2VkYThlNmRjNDFkMGJlYzY5OTVmMDNjZjE2MTBfNy04LTEtMS0w_7415b7b4-38db-4b8b-a29a-74ec9eb31a89"
      unitRef="usd">2078820000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
    <us-gaap:ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMTQxMw_4cbd7b26-5729-4343-9fe6-9dcf784857b1">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Information related to activity under our Employee Stock Purchase Plan (&#x201c;ESPP&#x201d;) was as follows: &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:85.869%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.385%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.346%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Shares issued&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;228,784&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average per share purchase price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;22.14&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted average per share discount from the fair value of our common stock on the date of issuance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(18.73)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="i05ad810c16c74d3086a67614c59b1eab_D20201227-20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjgyMGJlNDJjZGVkNDQyYjFiZmU0OWJiZDM5MGVhNGZkL3RhYmxlcmFuZ2U6ODIwYmU0MmNkZWQ0NDJiMWJmZTQ5YmJkMzkwZWE0ZmRfMi0yLTEtMS0w_de2ac0f1-3459-4c41-b7e0-08dd4939291e"
      unitRef="shares">228784</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="i316667ec5afd4cb7a006803d0a1e78e2_I20210327"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjgyMGJlNDJjZGVkNDQyYjFiZmU0OWJiZDM5MGVhNGZkL3RhYmxlcmFuZ2U6ODIwYmU0MmNkZWQ0NDJiMWJmZTQ5YmJkMzkwZWE0ZmRfMy0yLTEtMS0w_69bd0de6-fbe8-451a-babc-21ff018f6d57"
      unitRef="usdPerShare">22.14</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <form:WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock
      contextRef="i05ad810c16c74d3086a67614c59b1eab_D20201227-20210327"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOjgyMGJlNDJjZGVkNDQyYjFiZmU0OWJiZDM5MGVhNGZkL3RhYmxlcmFuZ2U6ODIwYmU0MmNkZWQ0NDJiMWJmZTQ5YmJkMzkwZWE0ZmRfNC0yLTEtMS0w_471ff358-6e73-406c-8ac7-1829e3219cb8"
      unitRef="usdPerShare">-18.73</form:WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock>
    <us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMTQwNQ_b7038164-43e0-477e-9a39-f4171b01d522">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock-based compensation was included in our Condensed Consolidated Statements of Income as follows (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 28,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of revenues&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,335&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;937&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Research and development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,689&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,439&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,053&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,247&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total stock-based compensation&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,077&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,623&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i0d1ea4fd763a46b5a3950b317c8ffaaf_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmJlYmRiMWUxZWM2MjQwNTQ4YzUxNTliYmQxMjI3YjMzL3RhYmxlcmFuZ2U6YmViZGIxZTFlYzYyNDA1NDhjNTE1OWJiZDEyMjdiMzNfMi0xLTEtMS0w_aa1ed7bd-3904-4618-acd2-a0dfc603bcea"
      unitRef="usd">1335000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i58b6c2d1e0654942851c8b0deb45c8eb_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmJlYmRiMWUxZWM2MjQwNTQ4YzUxNTliYmQxMjI3YjMzL3RhYmxlcmFuZ2U6YmViZGIxZTFlYzYyNDA1NDhjNTE1OWJiZDEyMjdiMzNfMi0zLTEtMS0w_4ffb6f63-c03f-45a1-a19b-448a0aa4c701"
      unitRef="usd">937000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ib24b7fe86f6246ff9aa7cd150451397b_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmJlYmRiMWUxZWM2MjQwNTQ4YzUxNTliYmQxMjI3YjMzL3RhYmxlcmFuZ2U6YmViZGIxZTFlYzYyNDA1NDhjNTE1OWJiZDEyMjdiMzNfMy0xLTEtMS0w_9501b49b-2ad8-40e3-a607-1abee5532505"
      unitRef="usd">1689000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i6979a8e46f2c4ffc9073db33ed8d7c2d_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmJlYmRiMWUxZWM2MjQwNTQ4YzUxNTliYmQxMjI3YjMzL3RhYmxlcmFuZ2U6YmViZGIxZTFlYzYyNDA1NDhjNTE1OWJiZDEyMjdiMzNfMy0zLTEtMS0w_865c0500-9f74-47ac-a702-9470a3445a46"
      unitRef="usd">1439000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="iefe5e641875c47c38077d9787aeda6d1_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmJlYmRiMWUxZWM2MjQwNTQ4YzUxNTliYmQxMjI3YjMzL3RhYmxlcmFuZ2U6YmViZGIxZTFlYzYyNDA1NDhjNTE1OWJiZDEyMjdiMzNfNC0xLTEtMS0w_5402a14d-6a82-4189-b405-0d076f3675be"
      unitRef="usd">4053000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i827c2859272f46d1af6b076a94267ac8_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmJlYmRiMWUxZWM2MjQwNTQ4YzUxNTliYmQxMjI3YjMzL3RhYmxlcmFuZ2U6YmViZGIxZTFlYzYyNDA1NDhjNTE1OWJiZDEyMjdiMzNfNC0zLTEtMS0w_5031b573-42e0-4b76-8e3a-406fb6e56e37"
      unitRef="usd">3247000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmJlYmRiMWUxZWM2MjQwNTQ4YzUxNTliYmQxMjI3YjMzL3RhYmxlcmFuZ2U6YmViZGIxZTFlYzYyNDA1NDhjNTE1OWJiZDEyMjdiMzNfNS0xLTEtMS0w_42ca7712-97a9-46c5-8450-59a01d925507"
      unitRef="usd">7077000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmJlYmRiMWUxZWM2MjQwNTQ4YzUxNTliYmQxMjI3YjMzL3RhYmxlcmFuZ2U6YmViZGIxZTFlYzYyNDA1NDhjNTE1OWJiZDEyMjdiMzNfNS0zLTEtMS0w_8cd4756a-dd9d-4eaa-a5fb-99648b319c09"
      unitRef="usd">5623000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RleHRyZWdpb246OGQwMjBmZjI4OTFjNGE2MThkMDI2ZDdjMDEyMzA0NWVfMTQwMQ_4d397f41-a642-46ba-9825-dc884423c6d1">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;At March&#160;27, 2021, the unrecognized stock-based compensation was as follows (dollars in thousands):&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unrecognized Expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Average Expected Recognition Period in Years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Restricted stock units&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,429&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2.03&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Performance restricted stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,719&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1.93&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Employee stock purchase plan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;973&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;0.86&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total unrecognized stock-based compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;36,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1.99&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions
      contextRef="i65abe29b399a4adfa10e5b326d1b11f1_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmRjZmM0MWM1MThlMzRiMjA4ZGY4YjAwNmRhOTMzNzBjL3RhYmxlcmFuZ2U6ZGNmYzQxYzUxOGUzNGIyMDhkZjhiMDA2ZGE5MzM3MGNfMi0xLTEtMS0w_7a284fe5-ff34-4ec8-803a-548a89850482"
      unitRef="usd">27429000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="if243d8f43a594989ae63b084745dfc7c_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmRjZmM0MWM1MThlMzRiMjA4ZGY4YjAwNmRhOTMzNzBjL3RhYmxlcmFuZ2U6ZGNmYzQxYzUxOGUzNGIyMDhkZjhiMDA2ZGE5MzM3MGNfMi0zLTEtMS0w_75101417-dee9-4044-8cd9-a0542965d51f">P2Y10D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions
      contextRef="i6f47cb425bf440ec8f2aa4f802c7c3c8_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmRjZmM0MWM1MThlMzRiMjA4ZGY4YjAwNmRhOTMzNzBjL3RhYmxlcmFuZ2U6ZGNmYzQxYzUxOGUzNGIyMDhkZjhiMDA2ZGE5MzM3MGNfMy0xLTEtMS0w_86b45e2c-0de7-4c7a-8574-ef8e8727b343"
      unitRef="usd">7719000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="iba459ce5a545461593f2866126f3c0c2_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmRjZmM0MWM1MThlMzRiMjA4ZGY4YjAwNmRhOTMzNzBjL3RhYmxlcmFuZ2U6ZGNmYzQxYzUxOGUzNGIyMDhkZjhiMDA2ZGE5MzM3MGNfMy0zLTEtMS0w_03bc4e56-5057-4f1b-b175-c413edc8e8e2">P1Y11M4D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions
      contextRef="i316667ec5afd4cb7a006803d0a1e78e2_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmRjZmM0MWM1MThlMzRiMjA4ZGY4YjAwNmRhOTMzNzBjL3RhYmxlcmFuZ2U6ZGNmYzQxYzUxOGUzNGIyMDhkZjhiMDA2ZGE5MzM3MGNfNC0xLTEtMS0w_bf48b6a9-dd2c-454e-b1a7-7a00424ca5cc"
      unitRef="usd">973000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="i05ad810c16c74d3086a67614c59b1eab_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmRjZmM0MWM1MThlMzRiMjA4ZGY4YjAwNmRhOTMzNzBjL3RhYmxlcmFuZ2U6ZGNmYzQxYzUxOGUzNGIyMDhkZjhiMDA2ZGE5MzM3MGNfNC0zLTEtMS0w_53c1549a-4ac9-41df-9923-cf6dc1828398">P0Y10M9D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmRjZmM0MWM1MThlMzRiMjA4ZGY4YjAwNmRhOTMzNzBjL3RhYmxlcmFuZ2U6ZGNmYzQxYzUxOGUzNGIyMDhkZjhiMDA2ZGE5MzM3MGNfNS0xLTEtMS0w_ac29a2f2-3599-48eb-af2a-b51ad33abb1f"
      unitRef="usd">36121000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82NC9mcmFnOjhkMDIwZmYyODkxYzRhNjE4ZDAyNmQ3YzAxMjMwNDVlL3RhYmxlOmRjZmM0MWM1MThlMzRiMjA4ZGY4YjAwNmRhOTMzNzBjL3RhYmxlcmFuZ2U6ZGNmYzQxYzUxOGUzNGIyMDhkZjhiMDA2ZGE5MzM3MGNfNS0zLTEtMS0w_3b4ab3ed-d573-46a9-8e05-4e6220a98965">P1Y11M26D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RleHRyZWdpb246NGIwMzgxYjk0MWJjNDA3ZWJmOGZkMmI5ZjU4OTRjN2JfMTc5_d3730163-15af-4090-bbe7-8b80a9982c45">Net Income per Share&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table reconciles the shares used in calculating basic net income per share and diluted net income per share (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:75.654%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.157%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.159%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;March 28,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted-average shares used in computing basic net income per share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;77,598&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;76,005&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Add potentially dilutive securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,390&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,505&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted-average shares used in computing diluted net income per share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;79,988&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;78,510&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Securities not included as they would have been antidilutive&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RleHRyZWdpb246NGIwMzgxYjk0MWJjNDA3ZWJmOGZkMmI5ZjU4OTRjN2JfMTgx_c85a1206-d705-4126-8c34-954450a65451">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table reconciles the shares used in calculating basic net income per share and diluted net income per share (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:75.654%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.157%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.159%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%"&gt;March 28,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted-average shares used in computing basic net income per share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;77,598&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;76,005&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Add potentially dilutive securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,390&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,505&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Weighted-average shares used in computing diluted net income per share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;79,988&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;78,510&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Securities not included as they would have been antidilutive&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RhYmxlOmE5NjIyYzk5Y2NhMDRhNWZhZmJmNzdjNDNhZjliODgzL3RhYmxlcmFuZ2U6YTk2MjJjOTljY2EwNGE1ZmFmYmY3N2M0M2FmOWI4ODNfNS0xLTEtMS0w_61e9d6fb-cb3e-4722-8204-8f12f4afcfe9"
      unitRef="shares">77598000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RhYmxlOmE5NjIyYzk5Y2NhMDRhNWZhZmJmNzdjNDNhZjliODgzL3RhYmxlcmFuZ2U6YTk2MjJjOTljY2EwNGE1ZmFmYmY3N2M0M2FmOWI4ODNfNS0zLTEtMS0w_fa7f9496-6d37-451c-9a74-88ab429c66e6"
      unitRef="shares">76005000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RhYmxlOmE5NjIyYzk5Y2NhMDRhNWZhZmJmNzdjNDNhZjliODgzL3RhYmxlcmFuZ2U6YTk2MjJjOTljY2EwNGE1ZmFmYmY3N2M0M2FmOWI4ODNfNi0xLTEtMS0w_5084fe2d-daf9-47e6-988f-d64d916f66aa"
      unitRef="shares">2390000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RhYmxlOmE5NjIyYzk5Y2NhMDRhNWZhZmJmNzdjNDNhZjliODgzL3RhYmxlcmFuZ2U6YTk2MjJjOTljY2EwNGE1ZmFmYmY3N2M0M2FmOWI4ODNfNi0zLTEtMS0w_5e1dd70d-4bbe-4cbd-8388-119f06ac7d6f"
      unitRef="shares">2505000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RhYmxlOmE5NjIyYzk5Y2NhMDRhNWZhZmJmNzdjNDNhZjliODgzL3RhYmxlcmFuZ2U6YTk2MjJjOTljY2EwNGE1ZmFmYmY3N2M0M2FmOWI4ODNfNy0xLTEtMS0w_23d0b44d-99b6-46e2-a393-59a33fe79308"
      unitRef="shares">79988000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RhYmxlOmE5NjIyYzk5Y2NhMDRhNWZhZmJmNzdjNDNhZjliODgzL3RhYmxlcmFuZ2U6YTk2MjJjOTljY2EwNGE1ZmFmYmY3N2M0M2FmOWI4ODNfNy0zLTEtMS0w_66aa5805-df50-4f5c-8c97-7ff6d56b8161"
      unitRef="shares">78510000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RhYmxlOmE5NjIyYzk5Y2NhMDRhNWZhZmJmNzdjNDNhZjliODgzL3RhYmxlcmFuZ2U6YTk2MjJjOTljY2EwNGE1ZmFmYmY3N2M0M2FmOWI4ODNfOS0xLTEtMS0w_ebe7c70b-0a61-43e8-8bde-4ca73e882dcc"
      unitRef="shares">3000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV82Ny9mcmFnOjRiMDM4MWI5NDFiYzQwN2ViZjhmZDJiOWY1ODk0YzdiL3RhYmxlOmE5NjIyYzk5Y2NhMDRhNWZhZmJmNzdjNDNhZjliODgzL3RhYmxlcmFuZ2U6YTk2MjJjOTljY2EwNGE1ZmFmYmY3N2M0M2FmOWI4ODNfOS0zLTEtMS0w_b5583fe0-7cc0-41f9-9e26-01bf972e29f7"
      unitRef="shares">9000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83MC9mcmFnOjJkZTEzNDgzYWNlMjRmODViZjBkYWQwMzJmNzU0NTczL3RleHRyZWdpb246MmRlMTM0ODNhY2UyNGY4NWJmMGRhZDAzMmY3NTQ1NzNfNTI5_8ea03f23-e681-4edd-a7cf-cf45ac720903">Commitments and Contingencies&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Leases&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;See Note 13, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Leases&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Contractual Obligations and Commitments&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our contractual obligations and commitments have not materially changed as of March&#160;27, 2021 from those disclosed in our Annual Report on Form 10-K for the year ended December&#160;26, 2020. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Legal Matters&lt;/span&gt;&lt;/div&gt;From time to time, we may be subject to legal proceedings and claims in the ordinary course of business. As of March&#160;27, 2021, and as of the filing of this Quarterly Report on Form&#160;10-Q, we were not involved in any material legal proceedings.</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfOTUy_7b726c59-5fba-40d3-83a9-0793cc03a242">LeasesWe lease real estate space under non-cancelable operating lease agreements for commercial and industrial space, as well as for our corporate headquarters located in Livermore, California. Our leases have remaining terms of 1 to 8 years, and some leases include options to extend up to 20 years. We also have operating leases for automobiles with remaining lease terms of 1 to 4 years. We did not include any of our renewal options in our lease terms for calculating our lease liability as the renewal options allow us to maintain operational flexibility and we are not reasonably certain we will exercise these options at this time. The weighted-average remaining lease term for our operating leases was 6 years as of March&#160;27, 2021 and the weighted-average discount rate was 3.85%. &lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of lease expense were as follows (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 28,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Lease expense:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating lease expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,123&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,924&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Short-term lease expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;40&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Variable lease expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;537&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;383&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,697&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,347&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Future minimum payments under our non-cancelable operating leases were as follows as of March&#160;27, 2021 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:85.742%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.328%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fiscal Year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Remainder of 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,747&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,040&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,710&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,297&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,814&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;14,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Total minimum lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;50,024&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(8,982)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Present value of net minimum lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;41,042&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: current portion&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(7,557)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Total long-term operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33,485&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:LesseeOperatingLeaseTermOfContract
      contextRef="ic2b8dfd7239b4fe2aef272a46ae68395_I20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfMjQ2_58193ac7-2ee5-473b-afa4-0298e0bca5da">P1Y</us-gaap:LesseeOperatingLeaseTermOfContract>
    <us-gaap:LesseeOperatingLeaseTermOfContract
      contextRef="ic8ccc8b2e39946abb7359d53c4a5740e_I20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfMjUy_8f3da287-cfc0-4cbc-8f48-f005a2e471b6">P8Y</us-gaap:LesseeOperatingLeaseTermOfContract>
    <us-gaap:LesseeOperatingLeaseRenewalTerm
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfMzA0_20f9f728-61a3-43bd-bccf-8a4824b84814">P20Y</us-gaap:LesseeOperatingLeaseRenewalTerm>
    <us-gaap:LesseeOperatingLeaseTermOfContract
      contextRef="if0ea874df2bd442183f529523316f9f0_I20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfMzg0_8a566ec5-bff5-4a3d-8c60-394d1ff71e1b">P1Y</us-gaap:LesseeOperatingLeaseTermOfContract>
    <us-gaap:LesseeOperatingLeaseTermOfContract
      contextRef="id24d49a556714c20b711b5b1ebcdc56d_I20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfMzkw_73ea78fb-efbd-43c0-bcec-e62d47a4be3e">P4Y</us-gaap:LesseeOperatingLeaseTermOfContract>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfNzEz_300c9573-1a04-4919-92f1-d180dc0a98ab">P6Y</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfNzY4_081b8317-3ada-4604-bfa9-280a18604395"
      unitRef="number">0.0385</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:LeaseCostTableTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfOTU3_e75836ce-9b95-4083-9c28-be9c70027c71">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of lease expense were as follows (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.315%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.329%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 28,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Lease expense:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating lease expense&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,123&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,924&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Short-term lease expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;40&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Variable lease expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;537&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;383&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,697&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,347&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:OperatingLeaseExpense
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjU0OTk3NDQ2ZGUwYjQzYTViMWQyNmExNGQwYTM2MjgxL3RhYmxlcmFuZ2U6NTQ5OTc0NDZkZTBiNDNhNWIxZDI2YTE0ZDBhMzYyODFfMy0xLTEtMS0w_fc5f09f6-858f-4e81-a18e-651acc666c44"
      unitRef="usd">2123000</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjU0OTk3NDQ2ZGUwYjQzYTViMWQyNmExNGQwYTM2MjgxL3RhYmxlcmFuZ2U6NTQ5OTc0NDZkZTBiNDNhNWIxZDI2YTE0ZDBhMzYyODFfMy0zLTEtMS0w_037c77a9-858c-4c89-a803-e25fea125ca9"
      unitRef="usd">1924000</us-gaap:OperatingLeaseExpense>
    <us-gaap:ShortTermLeaseCost
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjU0OTk3NDQ2ZGUwYjQzYTViMWQyNmExNGQwYTM2MjgxL3RhYmxlcmFuZ2U6NTQ5OTc0NDZkZTBiNDNhNWIxZDI2YTE0ZDBhMzYyODFfNC0xLTEtMS0w_71c5ecdc-0887-4228-9e03-1a1e32a9e08e"
      unitRef="usd">37000</us-gaap:ShortTermLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjU0OTk3NDQ2ZGUwYjQzYTViMWQyNmExNGQwYTM2MjgxL3RhYmxlcmFuZ2U6NTQ5OTc0NDZkZTBiNDNhNWIxZDI2YTE0ZDBhMzYyODFfNC0zLTEtMS0w_a107510b-29b9-45c1-a34e-fdd491623e2a"
      unitRef="usd">40000</us-gaap:ShortTermLeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjU0OTk3NDQ2ZGUwYjQzYTViMWQyNmExNGQwYTM2MjgxL3RhYmxlcmFuZ2U6NTQ5OTc0NDZkZTBiNDNhNWIxZDI2YTE0ZDBhMzYyODFfNS0xLTEtMS0w_08efa9e0-510b-459b-b957-4bab615403f9"
      unitRef="usd">537000</us-gaap:VariableLeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjU0OTk3NDQ2ZGUwYjQzYTViMWQyNmExNGQwYTM2MjgxL3RhYmxlcmFuZ2U6NTQ5OTc0NDZkZTBiNDNhNWIxZDI2YTE0ZDBhMzYyODFfNS0zLTEtMS0w_52bcb46e-27b4-4a7b-9b7a-dea5630b65d4"
      unitRef="usd">383000</us-gaap:VariableLeaseCost>
    <us-gaap:LeaseCost
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjU0OTk3NDQ2ZGUwYjQzYTViMWQyNmExNGQwYTM2MjgxL3RhYmxlcmFuZ2U6NTQ5OTc0NDZkZTBiNDNhNWIxZDI2YTE0ZDBhMzYyODFfNi0xLTEtMS0w_9636d85a-283f-4b32-a36b-bb99294491d1"
      unitRef="usd">2697000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjU0OTk3NDQ2ZGUwYjQzYTViMWQyNmExNGQwYTM2MjgxL3RhYmxlcmFuZ2U6NTQ5OTc0NDZkZTBiNDNhNWIxZDI2YTE0ZDBhMzYyODFfNi0zLTEtMS0w_e4b09434-f43b-4fc4-a406-915f6ca900b8"
      unitRef="usd">2347000</us-gaap:LeaseCost>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RleHRyZWdpb246MjM2NDZiOTYyODQ5NDFjZTlkMTZhYTM0ZDdlYmExOTJfOTU0_38a0ca93-aabf-46de-934f-fffaafd36168">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Future minimum payments under our non-cancelable operating leases were as follows as of March&#160;27, 2021 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:85.742%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.328%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fiscal Year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Remainder of 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,747&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,040&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,710&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,297&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,814&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;14,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Total minimum lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;50,024&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(8,982)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Present value of net minimum lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;41,042&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Less: current portion&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(7,557)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Total long-term operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33,485&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfMS0yLTEtMS0w_9be83ea8-1917-4c6c-bba9-3ac78eb0f6dd"
      unitRef="usd">6747000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfMi0yLTEtMS0w_4cee426d-e8f7-417e-8380-bb0d95affa4c"
      unitRef="usd">8040000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfMy0yLTEtMS0w_ae54c52e-b013-4ef3-9462-77ed161030cc"
      unitRef="usd">6710000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfNC0yLTEtMS0w_249b7295-4999-49ae-be96-5e9424d513d0"
      unitRef="usd">6297000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfNS0yLTEtMS0w_7d6c5942-d2aa-44e1-9f43-050253af9800"
      unitRef="usd">7814000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <form:LesseeOperatingLeaseLiabilityToBePaidAfterYearFour
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfNi0yLTEtMS0w_1b7938ac-9bbc-41ad-ad73-85e2be7bc22b"
      unitRef="usd">14416000</form:LesseeOperatingLeaseLiabilityToBePaidAfterYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfNy0yLTEtMS0w_96db64c2-8870-4b39-9a55-902605135c5a"
      unitRef="usd">50024000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfOC0yLTEtMS0w_b3b4c000-3ff3-4060-8a77-df61088ac548"
      unitRef="usd">8982000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfOS0yLTEtMS0w_e5946a28-90c7-4450-bcbe-87e84b9d958e"
      unitRef="usd">41042000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfMTAtMi0xLTEtMA_22855d56-9917-4b98-9192-43f7388de759"
      unitRef="usd">7557000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83My9mcmFnOjIzNjQ2Yjk2Mjg0OTQxY2U5ZDE2YWEzNGQ3ZWJhMTkyL3RhYmxlOjQxMzE0NWRlZDgwYjQ1ZTRiNzA0MjUwYzc1M2RlZTQzL3RhYmxlcmFuZ2U6NDEzMTQ1ZGVkODBiNDVlNGI3MDQyNTBjNzUzZGVlNDNfMTEtMi0xLTEtMA_230d3038-7d42-43df-bbd2-7e5d14db9ae2"
      unitRef="usd">33485000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfMjIyNA_31cae02d-02db-42c8-b13f-76a9e25d018f">Revenue&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Transaction price allocated to the remaining performance obligations:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; On March&#160;27, 2021, we had $6.3 million of remaining performance obligations, which were comprised of deferred service contracts and extended warranty contracts and contracts with overtime revenue recognition that are not yet delivered.&#160;We expect to recognize approximately&#160;74.5% of our remaining performance obligations as revenue in the remainder of fiscal 2021, approximately 16.6% in fiscal 2022, and approximately 8.9% in fiscal 2023 and thereafter. The foregoing excludes the value of other remaining performance obligations as they have original durations of one year or less, and also excludes information about variable consideration allocated entirely to a wholly unsatisfied performance obligation.  &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Contract balances:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;The timing of revenue recognition may differ from the timing of invoicing to customers. Accounts receivable is recorded at the invoiced amount, net of an allowance for doubtful accounts. A receivable is recognized in the period we deliver goods or provide services or when our right to consideration is unconditional. A contract asset is recorded when we have performed under the contract but our right to consideration is conditional on something other than the passage of time. Contract assets as of March&#160;27, 2021 and December&#160;26, 2020 were $4.8 million and $3.7 million, respectively, and are reported on the Condensed Consolidated Balance Sheets as a component of Prepaid expenses and other current assets.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Contract liabilities include payments received in advance of performance under a contract and are satisfied as the associated revenue is recognized. Contract liabilities are reported on the Condensed Consolidated Balance Sheets at the end of each reporting period as a component of Deferred revenue and Other liabilities. Contract liabilities as of March&#160;27, 2021 and December&#160;26, 2020 were $19.9 million and $22.2 million, respectively. During the three months ended March&#160;27, 2021, we recognized $9.3 million of revenue, that was included in contract liabilities as of December&#160;26, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Costs to obtain a contract:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; We generally expense sales commissions when incurred as a component of Selling, general and administrative expense, as the amortization period is typically less than one year. &lt;/span&gt;&lt;/div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Revenue by Category: &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Refer to Note 15, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Operating Segments and Enterprise-Wide Information&lt;/span&gt;, for further details.</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfMTA4_eace9a4b-f7bc-46f4-85b2-c5d4128af624"
      unitRef="usd">6300000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligationPercentage
      contextRef="i95ccedbfe61e47bfa57b17b6ebc66ed3_I20210327"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfMjg4_29a7c345-6d6b-48e1-9bff-3f635f4f7608"
      unitRef="number">0.745</us-gaap:RevenueRemainingPerformanceObligationPercentage>
    <us-gaap:RevenueRemainingPerformanceObligationPercentage
      contextRef="ia8e88a385c6347bc8a4d9e674e9ca6aa_I20210327"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfMzkw_4d588885-ab65-44dd-bc32-75fb5c99582b"
      unitRef="number">0.166</us-gaap:RevenueRemainingPerformanceObligationPercentage>
    <us-gaap:RevenueRemainingPerformanceObligationPercentage
      contextRef="i2e3d772ffb614ae983ec9483968502d3_I20210327"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfNDI3_2e013d9e-6f65-4fb8-994b-a7e4e6b902af"
      unitRef="number">0.089</us-gaap:RevenueRemainingPerformanceObligationPercentage>
    <us-gaap:ContractWithCustomerAssetNet
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfMTI1NQ_9996e44c-3604-4b49-bfc1-3793ac6104c7"
      unitRef="usd">4800000</us-gaap:ContractWithCustomerAssetNet>
    <us-gaap:ContractWithCustomerAssetNet
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfMTI2Mg_e3edcb8a-daba-46f7-a819-af5069fb873d"
      unitRef="usd">3700000</us-gaap:ContractWithCustomerAssetNet>
    <us-gaap:ContractWithCustomerLiability
      contextRef="i3228e9770d2f4580bee755ffe4247a1d_I20210327"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfMTc2OA_1efb9166-1b6b-4e85-b8c4-0fdf10563fac"
      unitRef="usd">19900000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="i6ff785e4fad44fa49d409ad053960f8e_I20201226"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfMTc3NQ_35ed0090-34a4-4f59-90fe-c29093035152"
      unitRef="usd">22200000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83Ni9mcmFnOmU0NGNlNGIxZjYyZTQ0MjI5NDU1N2ZiMDNiMmU2YjUyL3RleHRyZWdpb246ZTQ0Y2U0YjFmNjJlNDQyMjk0NTU3ZmIwM2IyZTZiNTJfMTgzOA_2fba7e2b-7129-498b-a651-6f7e98d8c603"
      unitRef="usd">9300000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RleHRyZWdpb246MGRlZGIxZmQ5ZGI4NDFiODlkNjg1MTZmOTUwNGIzZmJfMTIwOA_65743fa7-fe87-49fc-aeed-3c9e0255bbd4">Operating Segments and Enterprise-Wide Information&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our chief operating decision maker (&#x201c;CODM&#x201d;) is our Chief Executive Officer, who reviews operating results to make decisions about allocating resources and assessing performance for the entire company. We operate in two reportable segments consisting of the Probe Cards segment and the Systems segment. The following table summarizes the operating results by reportable segment (dollars in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.784%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.295%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.002%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.002%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.295%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.295%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.002%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.002%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.299%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="45" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="21" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="21" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 28, 2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Probe Cards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Corporate and Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Probe Cards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Corporate and Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenues&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158,898&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;186,636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;134,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,038&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;160,753&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross profit &lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;70,315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,599&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(7,208)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;76,706&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;60,743&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(6,687)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;67,390&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross margin&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;44.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;49.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;41.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;45.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;51.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;41.9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.122%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.879%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.224%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.389%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.224%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.389%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.224%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.389%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.224%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.389%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.224%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.389%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.224%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.389%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.371%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.389%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.383%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Operating results provide useful information to our management for assessment of our performance and results of operations. Certain components of our operating results are utilized to determine executive compensation along with other measures. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Corporate and Other includes unallocated expenses relating to amortization of intangible assets, inventory and fixed asset fair value adjustments due to acquisitions and share-based compensation, which are not used in evaluating the results of, or in allocating resources to, our reportable segments.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Certain revenue category information by reportable segment was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.443%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.818%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.818%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.818%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.818%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.818%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.117%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 28, 2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Probe Cards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Probe Cards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Market:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foundry &amp;amp; Logic&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;113,410&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;113,410&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;105,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;105,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;DRAM&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33,898&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33,898&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,696&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,696&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Flash&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,590&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,590&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,274&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,274&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,038&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,038&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158,898&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;186,636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;134,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,038&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;160,753&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Timing of revenue recognition:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Products transferred at a point in time&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158,476&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,671&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;183,147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;134,069&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158,927&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Products and services transferred over time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;422&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,067&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,489&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;646&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,180&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,826&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158,898&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;186,636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;134,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,038&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;160,753&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Geographical region:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Taiwan&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;44,734&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;846&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;45,580&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30,439&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,341&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;31,780&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;China&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;37,831&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,794&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;42,625&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;37,280&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,362&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43,642&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;21,308&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,178&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;29,486&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;25,611&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,305&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;31,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:5.25pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Asia-Pacific&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;1&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,878&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,080&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,958&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,455&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,408&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,863&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;South Korea&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,001&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;19,085&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,692&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;396&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;14,088&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Europe&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,833&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,166&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,999&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16,210&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,833&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;21,043&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Japan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,249&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,072&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,321&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,535&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,835&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,370&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Rest of the world&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,064&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,582&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,493&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;558&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,051&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158,898&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;186,636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;134,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,038&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;160,753&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:98.976%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.883%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.910%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.390%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.910%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.390%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.910%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.390%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.910%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.390%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.910%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.390%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.917%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:6pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:120%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;1&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt; Asia-Pacific includes all countries in the region except China, Japan, South Korea, and Taiwan, which are disclosed separately.&lt;/span&gt;&lt;/div&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:NumberOfReportableSegments
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RleHRyZWdpb246MGRlZGIxZmQ5ZGI4NDFiODlkNjg1MTZmOTUwNGIzZmJfMjgy_6390a7f5-3405-463d-8f12-c06be0a6cedc"
      unitRef="segment">2</us-gaap:NumberOfReportableSegments>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RleHRyZWdpb246MGRlZGIxZmQ5ZGI4NDFiODlkNjg1MTZmOTUwNGIzZmJfMTIxMQ_a05b34f0-46af-4d29-8451-861a5b4681cb">The following table summarizes the operating results by reportable segment (dollars in thousands):&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.784%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.295%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.002%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.002%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.295%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.295%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.002%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.002%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.299%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="45" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="21" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="21" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 28, 2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Probe Cards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Corporate and Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Probe Cards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Corporate and Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Revenues&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158,898&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;186,636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;134,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,038&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;160,753&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross profit &lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;70,315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,599&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(7,208)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;76,706&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;60,743&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,334&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(6,687)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;67,390&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Gross margin&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;44.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;49.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;41.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;45.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;51.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;41.9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iae880a7f70674f27a92416741be5ae48_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfMy0xLTEtMS0w_867f77ea-dc69-4d2f-8e65-8a2663380131"
      unitRef="usd">158898000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic0ebe9afd5434ebb846f70dd43904b59_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfMy0zLTEtMS0w_a2540246-abb2-4b67-b337-5051122df4d6"
      unitRef="usd">27738000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie9fd9bd28cb34b25917766a905b820c1_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfMy01LTEtMS0w_0f8024cd-af23-4e01-b196-49e19eda79e2"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfMy03LTEtMS0w_92a5b9c8-3cc5-46c7-89b0-315b994f6abb"
      unitRef="usd">186636000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1d1eb6004c3c4713b6b35cfd94353d5c_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfMy05LTEtMS0w_dffd74ad-60ec-47cf-bd5b-763e2b3d453d"
      unitRef="usd">134715000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8d11f1aa84f742768a9dbdf9a7d9d40e_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfMy0xMS0xLTEtMA_d6058ef9-51a9-47c5-9059-8c738686db0e"
      unitRef="usd">26038000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib46109fb73454d9ab19c49b1bebeba65_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfMy0xMy0xLTEtMA_c4a363c9-13f1-4aef-924f-40b4ee7fb6e8"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfMy0xNS0xLTEtMA_7592d9e3-676d-466b-973e-f21e192aa729"
      unitRef="usd">160753000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:GrossProfit
      contextRef="iae880a7f70674f27a92416741be5ae48_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNC0xLTEtMS0w_6d90d150-8e70-4382-b5f9-b6190b0bfe6f"
      unitRef="usd">70315000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="ic0ebe9afd5434ebb846f70dd43904b59_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNC0zLTEtMS0w_0544cc3b-6ea8-465e-b7fd-b5d8d5857e73"
      unitRef="usd">13599000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="ie9fd9bd28cb34b25917766a905b820c1_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNC01LTEtMS0w_1795441a-5446-46c8-9053-892861dca501"
      unitRef="usd">-7208000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNC03LTEtMS0w_a24b58e6-b2d7-42f9-b53c-37d5e349866c"
      unitRef="usd">76706000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i1d1eb6004c3c4713b6b35cfd94353d5c_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNC05LTEtMS0w_3bf20f9e-febe-414b-8af7-44abacff404c"
      unitRef="usd">60743000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i8d11f1aa84f742768a9dbdf9a7d9d40e_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNC0xMS0xLTEtMA_d2b0fcea-4aca-4114-bf07-4515c9f2e590"
      unitRef="usd">13334000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="ib46109fb73454d9ab19c49b1bebeba65_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNC0xMy0xLTEtMA_2f5177e6-cff3-40dd-8374-4742380c9047"
      unitRef="usd">-6687000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNC0xNS0xLTEtMA_6a583a6c-18e8-4d89-b612-88dd61499fe2"
      unitRef="usd">67390000</us-gaap:GrossProfit>
    <form:GrossMarginPercent
      contextRef="iae880a7f70674f27a92416741be5ae48_D20201227-20210327"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNS0xLTEtMS0w_075232ea-1ab7-41aa-9471-eac63994b581"
      unitRef="number">0.443</form:GrossMarginPercent>
    <form:GrossMarginPercent
      contextRef="ic0ebe9afd5434ebb846f70dd43904b59_D20201227-20210327"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNS0zLTEtMS0w_3a88cc66-7af4-4743-bd27-a27331427de8"
      unitRef="number">0.490</form:GrossMarginPercent>
    <form:GrossMarginPercent
      contextRef="ie9fd9bd28cb34b25917766a905b820c1_D20201227-20210327"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNS01LTEtMS0w_219dbb91-b5aa-4b23-8e73-2079ccc1c9ab"
      unitRef="number">0</form:GrossMarginPercent>
    <form:GrossMarginPercent
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNS03LTEtMS0w_55aa9711-5345-4cd1-a66a-7f247b64ab0f"
      unitRef="number">0.411</form:GrossMarginPercent>
    <form:GrossMarginPercent
      contextRef="i1d1eb6004c3c4713b6b35cfd94353d5c_D20191229-20200328"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNS05LTEtMS0w_8bf3c0d0-6eac-469d-ab68-22a940cb9ee5"
      unitRef="number">0.451</form:GrossMarginPercent>
    <form:GrossMarginPercent
      contextRef="i8d11f1aa84f742768a9dbdf9a7d9d40e_D20191229-20200328"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNS0xMS0xLTEtMA_35670c42-ea1a-4784-a16d-35c6646e3960"
      unitRef="number">0.512</form:GrossMarginPercent>
    <form:GrossMarginPercent
      contextRef="ib46109fb73454d9ab19c49b1bebeba65_D20191229-20200328"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNS0xMy0xLTEtMA_81a5cb3a-55db-400e-9fac-08598a033105"
      unitRef="number">0</form:GrossMarginPercent>
    <form:GrossMarginPercent
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjU4ZDI1MjlkODM2MjQ4YzZhMWNmNjUzNTk2NjM1Mzk2L3RhYmxlcmFuZ2U6NThkMjUyOWQ4MzYyNDhjNmExY2Y2NTM1OTY2MzUzOTZfNS0xNS0xLTEtMA_085d5dc0-8f5c-4149-9973-d77afa57250a"
      unitRef="number">0.419</form:GrossMarginPercent>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RleHRyZWdpb246MGRlZGIxZmQ5ZGI4NDFiODlkNjg1MTZmOTUwNGIzZmJfMTIxOA_0fd4b9b5-0145-4daf-a765-635d7ff504d4">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Certain revenue category information by reportable segment was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.443%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.818%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.818%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.818%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.818%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.818%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.117%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 27, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 28, 2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Probe Cards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Probe Cards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Market:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Foundry &amp;amp; Logic&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;113,410&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;113,410&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;105,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;105,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;DRAM&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33,898&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;33,898&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,696&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,696&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Flash&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,590&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,590&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,274&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,274&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Systems&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,038&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,038&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158,898&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;186,636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;134,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,038&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;160,753&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Timing of revenue recognition:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Products transferred at a point in time&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158,476&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,671&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;183,147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;134,069&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,858&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158,927&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Products and services transferred over time&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;422&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,067&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,489&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;646&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,180&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,826&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158,898&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;186,636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;134,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,038&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;160,753&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Geographical region:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Taiwan&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;44,734&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;846&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;45,580&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;30,439&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,341&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;31,780&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;China&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;37,831&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,794&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;42,625&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;37,280&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,362&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;43,642&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;21,308&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,178&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;29,486&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;25,611&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,305&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;31,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:5.25pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Asia-Pacific&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;1&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,878&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,080&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,958&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,455&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,408&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,863&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;South Korea&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,001&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;19,085&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,692&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;396&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;14,088&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Europe&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,833&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,166&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,999&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;16,210&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,833&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;21,043&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Japan&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,249&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,072&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,321&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,535&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,835&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,370&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Rest of the world&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,064&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,582&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,493&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;558&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,051&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;158,898&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;27,738&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;186,636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;134,715&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26,038&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;160,753&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:98.976%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:41.883%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.910%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.390%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.910%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.390%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.910%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.390%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.910%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.390%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.910%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.390%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.917%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:6pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:120%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;1&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt; Asia-Pacific includes all countries in the region except China, Japan, South Korea, and Taiwan, which are disclosed separately.&lt;/span&gt;&lt;/div&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i17efef4193d241de9fd4b4aa18935ad2_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNC0xLTEtMS0w_11dc57f9-45a3-4099-ab68-227e36cbaa13"
      unitRef="usd">113410000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7da0b92a26ea4b8385b19301bd68ef11_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNC0zLTEtMS0w_d3e115d5-7588-4c61-befe-3e878a240929"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i06d0926b712243129dae4fa849a0a9ea_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNC01LTEtMS0w_cc743c12-419a-46d1-99d8-e382dfe9a04a"
      unitRef="usd">113410000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i37881b07144e4eea8645bdfdfe097bd5_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNC03LTEtMS0w_9bd357b8-2e3e-455a-a539-d6c8a5259f6c"
      unitRef="usd">105745000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="icaa7b11a536247a8bfa781f53efdf44a_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNC05LTEtMS0w_69cc803c-44fa-4c00-8495-5029fd576032"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3e9efdad47524942afd5e27a23964d32_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNC0xMS0xLTEtMA_7aca126b-e57d-4bde-b48d-10e120bc1396"
      unitRef="usd">105745000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia931704fac454b338df11d146e9a2eff_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNS0xLTEtMS0w_ad2ca734-42e2-41f6-93e2-d94e01e34db3"
      unitRef="usd">33898000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i5cfc6e078c914c129e8355f84fa7d747_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNS0zLTEtMS0w_4ec12593-6e98-4a2f-82fd-7e6f58ad0131"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibcae4145fd9c44f4b14aa1fe329fbf70_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNS01LTEtMS0w_88ad5758-61f7-4b39-b4d6-f3b9d390a39c"
      unitRef="usd">33898000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9795e20452c245b99fdd733af9bd9df2_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNS03LTEtMS0w_2699215e-6e39-48a1-9fd5-d21df90612cb"
      unitRef="usd">24696000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6a137e953a044d048cd400c5ecf42ff1_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNS05LTEtMS0w_ce576c3f-8b62-46b9-96e3-911727ddd497"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i39be1a79f7ae423f96574447b73ca5e2_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNS0xMS0xLTEtMA_427bd33c-5521-472d-9ede-d9b92153527a"
      unitRef="usd">24696000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8d01e67aa3a746e084149947068b844e_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNi0xLTEtMS0w_a30283f9-79fa-45bb-83cb-975000a44b63"
      unitRef="usd">11590000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id191128bfc424119bcbf275f3e530dd4_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNi0zLTEtMS0w_0047c81b-e26f-45d7-8d35-71c6732560ed"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i5bd4e3f47e33489aaf04bc6b4e9b7f89_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNi01LTEtMS0w_178f72a8-c356-4f01-9a58-1a98ca9928fc"
      unitRef="usd">11590000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2a8b381a2ab94c69856c5a2eb280a578_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNi03LTEtMS0w_3c8e8ce8-8106-444b-a0d7-a88dd49d8825"
      unitRef="usd">4274000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i97fea9c8fd424e59b65b256f1c86d121_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNi05LTEtMS0w_36181869-ca0f-41ae-8d99-8f9d0dc682f1"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7bc781a5253844f3877a8b110caec858_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNi0xMS0xLTEtMA_ee2f2b17-7a1c-4c73-a4fe-dbc18517fc6e"
      unitRef="usd">4274000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic16eb573ec524ec7aaaf62f8d10f71e4_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNy0xLTEtMS0w_17218424-8259-424e-aaf7-c496d7f4c854"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i89fe92f3430b474f83a23d49a6dbafc2_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNy0zLTEtMS0w_c00b8a0c-8746-40d9-91c7-fd14c1377d80"
      unitRef="usd">27738000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie705bdb63537443298fbcfcebd162058_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNy01LTEtMS0w_cb84f106-fd91-4cad-9377-41ab369fc8bf"
      unitRef="usd">27738000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9e79fb4d68724345b39e4b4bc4eb7c01_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNy03LTEtMS0w_88703687-47f0-4331-a462-428a3667a130"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0679901700b2486f9c867b8e08b17728_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNy05LTEtMS0w_f119070e-76ab-467e-8bc2-e0dab6a1ee17"
      unitRef="usd">26038000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4759480c0617414696c39f2e8a2409e7_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfNy0xMS0xLTEtMA_e221b411-0263-4f97-98bc-232e78a1bb14"
      unitRef="usd">26038000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7e83c001dbc94677a59ca9c262df771e_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfOC0xLTEtMS0w_361cc899-e0e5-4252-8b12-436321490a3c"
      unitRef="usd">158898000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id7ca4f9333334d088e8e33a90870e029_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfOC0zLTEtMS0w_a203b938-b4c4-4eaf-a2f7-ae85463e3b05"
      unitRef="usd">27738000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfOC01LTEtMS0w_44db932c-480b-4321-803b-26293adfdc22"
      unitRef="usd">186636000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibbdd3f9e212d4506a836ccb10f6e47b9_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfOC03LTEtMS0w_981c43ee-4f30-442e-8b7d-b0bd0a5125e9"
      unitRef="usd">134715000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id0718e19df664d0c8fb6766b10fd3625_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfOC05LTEtMS0w_3ff9bca9-11b4-4564-97ca-9620a75c7150"
      unitRef="usd">26038000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfOC0xMS0xLTEtMA_b804a6a7-52d6-4188-b472-fe2469a24090"
      unitRef="usd">160753000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="idfb6a757a29d49308db33aeaef39a6e3_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTAtMS0xLTEtMA_8dcb8e83-652b-4252-bf5a-9ffca9922a56"
      unitRef="usd">158476000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7ba9846df54147c19e3689b354c4abb7_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTAtMy0xLTEtMA_249c3f61-a525-4cd5-b5cd-2c6ad696cee9"
      unitRef="usd">24671000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4688ad32de06414e9218db7ef867f100_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTAtNS0xLTEtMA_08b1fa10-54ea-4856-b915-355c881f2597"
      unitRef="usd">183147000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i339f727e2f4641348d09b357bc256118_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTAtNy0xLTEtMA_1f9ad9f5-043b-4db5-8f4c-9f899d0cfbf3"
      unitRef="usd">134069000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i958689f927964444a9005b48f3f1cd18_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTAtOS0xLTEtMA_c95e2af4-b451-4e85-a403-4a007bf260a2"
      unitRef="usd">24858000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i680008eb5c844aa2a28d1642a0f15c8c_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTAtMTEtMS0xLTA_a169ced5-6521-4a6b-92f0-ecfac5e52dc5"
      unitRef="usd">158927000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0f9adfb09b8f4ab6ac2ab399cbac9a3e_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTEtMS0xLTEtMA_464bce0b-0abd-4f4a-a696-176b3d52175f"
      unitRef="usd">422000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i56062132d29440f281913bf199e1ea1c_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTEtMy0xLTEtMA_7846961c-acf8-4fe7-8735-3c31602672f9"
      unitRef="usd">3067000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib36601237b6d4b7b966d7a550eccee3f_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTEtNS0xLTEtMA_08fe274a-e441-42c0-9fcc-c0f84c522f40"
      unitRef="usd">3489000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iad4ec9255c74464982894b272350432b_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTEtNy0xLTEtMA_5708e8e2-cb80-49fb-ad98-86c454e9eb63"
      unitRef="usd">646000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i47cf58e14027485da9f1806f52ec2d8d_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTEtOS0xLTEtMA_66447177-14d4-45ec-af5e-efb3489829ac"
      unitRef="usd">1180000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i508e3a788e944a4584d46e5d7b530c65_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTEtMTEtMS0xLTA_8b79d80c-4b39-4f38-9183-bc9a88ddc503"
      unitRef="usd">1826000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7e83c001dbc94677a59ca9c262df771e_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTItMS0xLTEtMA_3e185425-15b9-47e3-bdf2-63e23faed72c"
      unitRef="usd">158898000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id7ca4f9333334d088e8e33a90870e029_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTItMy0xLTEtMA_621889c8-b314-4879-a538-33685cb55425"
      unitRef="usd">27738000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTItNS0xLTEtMA_7440a9cd-09e6-4d01-b314-9c71ca384c1f"
      unitRef="usd">186636000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibbdd3f9e212d4506a836ccb10f6e47b9_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTItNy0xLTEtMA_a4679346-66a4-47c2-b669-9e74baf06b6b"
      unitRef="usd">134715000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id0718e19df664d0c8fb6766b10fd3625_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTItOS0xLTEtMA_2ca0d3f2-d2f9-4afa-9f5b-dd875d1ebae3"
      unitRef="usd">26038000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTItMTEtMS0xLTA_89cff7e7-a02f-4559-8161-b82c7672cc9d"
      unitRef="usd">160753000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7eaa7209f1e1493aa0245c1722e66c95_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTQtMS0xLTEtMA_2a40b490-9bf1-4ba5-b686-d0eca91c462c"
      unitRef="usd">44734000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3857b626483842778a520d0a41280961_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTQtMy0xLTEtMA_bd1d2245-3ca5-463f-b264-14be81285872"
      unitRef="usd">846000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic122ffb3a2d64e3b969ffc2c161d5bf3_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTQtNS0xLTEtMA_daf8d3f4-6ae1-42e0-a788-7996c1edba0b"
      unitRef="usd">45580000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3d85c4aaf19b4cb28ce656d9d253bb5a_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTQtNy0xLTEtMA_34909a45-3e22-412b-bc5a-dce01c512423"
      unitRef="usd">30439000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i032dbb7cc2674d6d8ff265a8c2185bd6_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTQtOS0xLTEtMA_520efff6-8f1b-4121-9168-6f119a52590e"
      unitRef="usd">1341000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i654d15775fc749c4b27da9372fb7a810_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTQtMTEtMS0xLTA_b442d6f9-ecd0-45b8-809d-74c1458559f7"
      unitRef="usd">31780000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic1accfe97f8f484d878b703e5c40005c_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTctMS0xLTEtMA_47a78131-ce8a-484b-9fbf-b6f15da4e0b7"
      unitRef="usd">37831000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i40fb54f5e8714d47832f057095fdd640_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTctMy0xLTEtMA_6f4ce259-dcd1-4464-88ab-7fa58e32e3db"
      unitRef="usd">4794000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i53ff53ba243f4f0cb599eb93c6dfc567_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTctNS0xLTEtMA_09522092-f200-4ab8-a0b0-c7efcaa6bfce"
      unitRef="usd">42625000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ib347dd7f3a714612afde16371c64f12f_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTctNy0xLTEtMA_d0dcc960-c296-4091-89b7-f3a46d05cbf9"
      unitRef="usd">37280000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2b911ab200b84c358dddd7385b29bcdc_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTctOS0xLTEtMA_c894ac96-5d9e-4705-87e2-547b254f3db3"
      unitRef="usd">6362000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i9d1f83fb61604c4e86f699bb0e54187c_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTctMTEtMS0xLTA_d6820e8d-8703-4414-b6c0-70cd0f211061"
      unitRef="usd">43642000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i73700f90cb854d8b80da4f457c252a42_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTUtMS0xLTEtMA_20559c68-51a1-4917-a2c5-9cf774c6ead4"
      unitRef="usd">21308000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie59a8f92898a4fa5a4601fc6fcaac1df_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTUtMy0xLTEtMA_2fab3526-b931-4124-8f19-ce2aaff626c6"
      unitRef="usd">8178000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0ddb8609fb5244fc9f93a64b8cea3bda_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTUtNS0xLTEtMA_142f3fce-bda4-4e39-be6e-fa763d9f3cf0"
      unitRef="usd">29486000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibf4405a844544411add62f40112d7546_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTUtNy0xLTEtMA_ab53e292-0081-47b1-9e1d-16e910ec2377"
      unitRef="usd">25611000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia880de968dde4a95ab03f10c63cf1cef_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTUtOS0xLTEtMA_c6a612c4-0b44-42c9-9501-77e702154a9b"
      unitRef="usd">6305000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i80f0323a25944c2682fe3fc1ad38512c_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTUtMTEtMS0xLTA_87a96832-5b0d-4723-85a4-c54c227c9c5a"
      unitRef="usd">31916000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i16fe4cc5dcee471d8123f16d8d072680_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjAtMS0xLTEtMA_1ac22dad-820b-4c1c-8332-4f99e66ae590"
      unitRef="usd">27878000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie42fe6855e514f228ed0815382321ca8_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjAtMy0xLTEtMA_48301159-5a6b-4799-9269-dc170767dbf1"
      unitRef="usd">1080000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i682500a8836e44ceb66954588f17cc72_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjAtNS0xLTEtMA_de4548a3-fd75-4d8f-aa89-671edb6b662e"
      unitRef="usd">28958000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6a69df588ff04e19a7df5ca181bcb236_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjAtNy0xLTEtMA_6803e5ff-ff6f-4ec1-88d2-5d4b9dace6b5"
      unitRef="usd">4455000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i78f63a92bb95483188c38479b8516d32_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjAtOS0xLTEtMA_003e5879-283e-4ab3-88a7-fa35f1fa7bfd"
      unitRef="usd">3408000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i53c327ad0e9e410eb9fb7fb5d0892431_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjAtMTEtMS0xLTA_1a378010-2d83-4486-891d-b2aa848d052b"
      unitRef="usd">7863000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="idd07a09dea0243c881f108ab527080a5_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTYtMS0xLTEtMA_aac18b3f-d4f7-4214-82a3-0b77168c1d51"
      unitRef="usd">18001000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i39a61f079ac545feb8809d5a842ee8b1_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTYtMy0xLTEtMA_dab27f5f-fb43-485a-adfd-d04ed3d6c6e2"
      unitRef="usd">1084000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i58b62a5b2e7e4947988950b5e020b47e_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTYtNS0xLTEtMA_4ea56eaa-adef-4710-b485-0a8ec2f9c03e"
      unitRef="usd">19085000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4e660b622ae94bc58ee3278d89212060_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTYtNy0xLTEtMA_d25121d4-2903-4516-a2c8-de146ff73f67"
      unitRef="usd">13692000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i015d7e55169940f9987b4c2e71a7aa16_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTYtOS0xLTEtMA_45361d60-fe5c-4f6e-ba80-30d11dd6bb9b"
      unitRef="usd">396000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i09bb6bc9f3d04815b88619a3f2487ac9_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTYtMTEtMS0xLTA_983f6d04-adc5-4265-bbf9-26d39d56d213"
      unitRef="usd">14088000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4982510ad45e40c2b807c2e86413bb07_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTktMS0xLTEtMA_16f29e15-1c1f-48de-9e5f-a68050283824"
      unitRef="usd">2833000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i64db8a68c3594e57a749760302f56fc8_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTktMy0xLTEtMA_0a2f8620-eed4-4b25-9039-e6af480f6b4c"
      unitRef="usd">7166000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4492ef2d17954c888e705d4c19f02f29_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTktNS0xLTEtMA_55861a6f-6e42-46ef-bafd-1cf102efebbd"
      unitRef="usd">9999000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibdc0fcb7d49c4728b3cf73f327c1a0b4_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTktNy0xLTEtMA_cc0e8431-e9f1-481d-986a-908b3e6d5f59"
      unitRef="usd">16210000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i14acbd2358a1447bab4e14686665e5bc_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTktOS0xLTEtMA_d71b54d8-0fa9-4dc8-ae87-e4e39f913723"
      unitRef="usd">4833000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6c0294018ff9442a960d081a3653d051_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTktMTEtMS0xLTA_1122d00b-6ae1-49d0-89ab-f4c551a78d7a"
      unitRef="usd">21043000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i69c600524b554299a6aadf4d658f8ad6_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTgtMS0xLTEtMA_556e5fc4-375a-4a3a-8594-1a95a16fa82a"
      unitRef="usd">5249000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i34afca68b1144a9183ea6da159a7050c_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTgtMy0xLTEtMA_02816916-0eee-42a6-80a1-125321309cac"
      unitRef="usd">4072000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id487f2a1555d4150a10a17197475ff82_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTgtNS0xLTEtMA_3131ac71-1ca6-4455-9c04-110051d6c039"
      unitRef="usd">9321000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i41c8414a4aec489093402d27d3a92a91_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTgtNy0xLTEtMA_f683b050-8b2e-4cda-ae0b-1e5908f5c9e2"
      unitRef="usd">5535000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0435f4eeea3e474183fcc858a4ba9981_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTgtOS0xLTEtMA_74901e0f-b35b-403c-ac73-26cd873d2eb4"
      unitRef="usd">2835000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1484b211f9c94f359a281ec877dcfd16_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMTgtMTEtMS0xLTA_b5b8df18-7f2d-44e1-bbcc-296fd634892a"
      unitRef="usd">8370000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7205a4b7535c4d5881aa9c21967f2996_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjEtMS0xLTEtMA_e7dff2be-165a-4b65-a406-0ebc54f1ae15"
      unitRef="usd">1064000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iac2687805b774ca6955d6ca8c74cb17b_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjEtMy0xLTEtMA_a847afd6-f435-4394-a854-5cc68a2f9edf"
      unitRef="usd">518000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1dcc3d38bd6a498f85e6e5bee8b57b2f_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjEtNS0xLTEtMA_b51375af-7d58-42a4-97e2-01d17114f953"
      unitRef="usd">1582000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie8fb6452425e4ec18b22ff7303ac3204_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjEtNy0xLTEtMA_163a59c0-2267-4dca-88a9-13083de7ebb0"
      unitRef="usd">1493000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i39aecdec956e40c096226f6afc35944c_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjEtOS0xLTEtMA_2944ba5f-c029-4a94-9c58-3516d6fddfec"
      unitRef="usd">558000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic64b1395f36741988775a19212150652_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjEtMTEtMS0xLTA_fdb3c02a-60b8-4ab0-a818-32910abad5c2"
      unitRef="usd">2051000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i7e83c001dbc94677a59ca9c262df771e_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjItMS0xLTEtMA_a2f8ad95-25e6-4770-bba9-21984c4565be"
      unitRef="usd">158898000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id7ca4f9333334d088e8e33a90870e029_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjItMy0xLTEtMA_eef92922-1700-42ff-9f33-0cb6663e3fae"
      unitRef="usd">27738000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjItNS0xLTEtMA_7ce108b2-8814-43cc-bde1-232cd0360653"
      unitRef="usd">186636000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibbdd3f9e212d4506a836ccb10f6e47b9_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjItNy0xLTEtMA_2615c9d2-d383-4b11-b0a5-cf107c53428e"
      unitRef="usd">134715000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="id0718e19df664d0c8fb6766b10fd3625_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjItOS0xLTEtMA_09feea30-6c9c-4a13-9920-42fe18bcb894"
      unitRef="usd">26038000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic114617db74e448c9f4472c1fbf73d96_D20191229-20200328"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjljODllM2Q1N2M5NTQ2ZDc4MjZmNThkZTI4MTQyOWQ5L3NlYzo5Yzg5ZTNkNTdjOTU0NmQ3ODI2ZjU4ZGUyODE0MjlkOV83OS9mcmFnOjBkZWRiMWZkOWRiODQxYjg5ZDY4NTE2Zjk1MDRiM2ZiL3RhYmxlOjAwYmI5MmNlMzM3YjQ5NGY5ZmJhYjkyYzhhMWVjM2Y2L3RhYmxlcmFuZ2U6MDBiYjkyY2UzMzdiNDk0ZjlmYmFiOTJjOGExZWMzZjZfMjItMTEtMS0xLTA_54f6ca3d-49ce-4949-b75f-69031949db03"
      unitRef="usd">160753000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>11
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692474222024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cover Page - shares<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Apr. 30, 2021</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_CoverAbstract', window );"><strong>Cover [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-Q<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr 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_DocumentQuarterlyReport', window );">Document Quarterly Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Mar. 27,  2021<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr 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>
</tr>
<tr 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_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">000-50307<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">FormFactor,&#160;Inc.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr 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>
</tr>
<tr 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">13-3711155<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr 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">7005 Southfront Road<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr 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">Livermore<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr 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_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">CA<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr 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_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">94551<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr 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_CityAreaCode', window );">City Area Code</a></td>
<td class="text">925<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr 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_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">290-4000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr 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.001 par value<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr 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">FORM<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr 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>
</tr>
<tr 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>
</tr>
<tr 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>
</tr>
<tr 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>
</tr>
<tr 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>
</tr>
<tr 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>
</tr>
<tr 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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">77,622,717<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr 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">0001039399<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr 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-25<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr 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_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2021<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr 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_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">Q1<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_CoverAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CoverAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CurrentFiscalYearEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>End date of current fiscal year in the format --MM-DD.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CurrentFiscalYearEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gMonthDayItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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 YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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 YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentQuarterlyReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 quarterly 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 Form 10-Q<br> -Number 240<br> -Section 308<br> -Subsection a<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_DocumentQuarterlyReport</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_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_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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692476661928">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Dec. 26, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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">$ 173,616<span></span>
</td>
<td class="nump">$ 187,225<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MarketableSecuritiesCurrent', window );">Marketable securities</a></td>
<td class="nump">94,093<span></span>
</td>
<td class="nump">67,810<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, net of allowance for doubtful accounts of $232 and $248</a></td>
<td class="nump">103,500<span></span>
</td>
<td class="nump">107,603<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories, net</a></td>
<td class="nump">104,727<span></span>
</td>
<td class="nump">99,229<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue', window );">Restricted cash</a></td>
<td class="nump">2,798<span></span>
</td>
<td class="nump">1,904<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">19,371<span></span>
</td>
<td class="nump">23,303<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">498,105<span></span>
</td>
<td class="nump">487,074<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestrictedCashAndCashEquivalentsNoncurrent', window );">Restricted cash</a></td>
<td class="nump">1,894<span></span>
</td>
<td class="nump">1,969<span></span>
</td>
</tr>
<tr class="ro">
<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">37,208<span></span>
</td>
<td class="nump">30,756<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net of accumulated depreciation</a></td>
<td class="nump">112,312<span></span>
</td>
<td class="nump">104,103<span></span>
</td>
</tr>
<tr class="ro">
<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">214,218<span></span>
</td>
<td class="nump">212,761<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangibles, net</a></td>
<td class="nump">48,786<span></span>
</td>
<td class="nump">59,147<span></span>
</td>
</tr>
<tr class="ro">
<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">65,821<span></span>
</td>
<td class="nump">66,242<span></span>
</td>
</tr>
<tr class="re">
<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">1,867<span></span>
</td>
<td class="nump">1,165<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">980,211<span></span>
</td>
<td class="nump">963,217<span></span>
</td>
</tr>
<tr class="re">
<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">67,720<span></span>
</td>
<td class="nump">62,045<span></span>
</td>
</tr>
<tr class="re">
<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 liabilities</a></td>
<td class="nump">43,468<span></span>
</td>
<td class="nump">55,342<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtCurrent', window );">Current portion of term loans, net of unamortized issuance costs</a></td>
<td class="nump">9,260<span></span>
</td>
<td class="nump">9,516<span></span>
</td>
</tr>
<tr class="re">
<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</a></td>
<td class="nump">18,644<span></span>
</td>
<td class="nump">20,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_OperatingLeaseLiabilityCurrent', window );">Operating lease liabilities</a></td>
<td class="nump">7,557<span></span>
</td>
<td class="nump">6,704<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">146,649<span></span>
</td>
<td class="nump">154,571<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtNoncurrent', window );">Term loans, less current portion, net of unamortized issuance costs</a></td>
<td class="nump">22,390<span></span>
</td>
<td class="nump">24,978<span></span>
</td>
</tr>
<tr class="re">
<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">4,965<span></span>
</td>
<td class="nump">5,346<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Long-term operating lease liabilities</a></td>
<td class="nump">33,485<span></span>
</td>
<td class="nump">27,996<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredCreditsAndOtherLiabilitiesNoncurrent', window );">Other liabilities</a></td>
<td class="nump">6,189<span></span>
</td>
<td class="nump">6,242<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">213,678<span></span>
</td>
<td class="nump">219,133<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Stockholders&#8217; equity:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock, $0.001 par value</a></td>
<td class="nump">78<span></span>
</td>
<td class="nump">78<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TreasuryStockValue', window );">Treasury stock, at cost, 136,402 and &#8212; shares</a></td>
<td class="num">(5,738)<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_AdditionalPaidInCapitalCommonStock', window );">Additional paid-in capital</a></td>
<td class="nump">915,136<span></span>
</td>
<td class="nump">903,838<span></span>
</td>
</tr>
<tr class="re">
<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</a></td>
<td class="nump">3,150<span></span>
</td>
<td class="nump">5,886<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Accumulated deficit</a></td>
<td class="num">(146,093)<span></span>
</td>
<td class="num">(165,718)<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">766,533<span></span>
</td>
<td class="nump">744,084<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">$ 980,211<span></span>
</td>
<td class="nump">$ 963,217<span></span>
</td>
</tr>
<tr class="re">
<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 (in shares)</a></td>
<td class="nump">77,758,530<span></span>
</td>
<td class="nump">77,437,997<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, 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 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121593590&amp;loc=d3e4428-111522<br><br>Reference 2: 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(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6676-107765<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=121593590&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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(30)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=d3e637-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<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)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=SL7669686-108580<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br><br>Reference 7: 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=121641772&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=120391452&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=120398452&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 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&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 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559654&amp;loc=d3e5710-111685<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 6: 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 (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 7: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 8: 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=120400017&amp;loc=d3e572229-122910<br><br>Reference 9: 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 (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 10: 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 30<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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=121566466&amp;loc=d3e6801-107765<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 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 4: 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 (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559654&amp;loc=d3e5710-111685<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.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: 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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 8: 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=121566466&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_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=121586364&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=121566466&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=120391452&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_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=120391452&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_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=120391452&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_DeferredCreditsAndOtherLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 unearned revenue or income, not otherwise specified in the taxonomy, which is expected to be taken into income after one year or beyond the normal operating cycle, if longer and noncurrent obligations not separately disclosed in the balance sheet (other liabilities, noncurrent).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredCreditsAndOtherLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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://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 6<br> -URI http://asc.fasb.org/extlink&amp;oid=120406818&amp;loc=d3e31931-109318<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 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=120406818&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_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://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 6<br> -URI http://asc.fasb.org/extlink&amp;oid=120406818&amp;loc=d3e31931-109318<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 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=120406818&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_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=120391452&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_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<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(10)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&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 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120320667&amp;loc=SL49117168-202975<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 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_IntangibleAssetsNetExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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),(b))<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 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16212-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_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=121566466&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 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=120391452&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://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<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 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559654&amp;loc=d3e5710-111685<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.19-26)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559654&amp;loc=d3e5710-111685<br><br>Reference 6: 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 (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 8: 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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&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_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<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(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&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(a)(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: 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 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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 210.5-02(32))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559654&amp;loc=d3e5710-111685<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 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 4: 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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<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 210.5-02.21)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559654&amp;loc=d3e5710-111685<br><br>Reference 7: 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 (c)<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_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_LongTermDebtCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease 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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19,20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&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_LongTermDebtCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LongTermDebtNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 unamortized (discount) premium and debt issuance costs of long-term debt classified as noncurrent and excluding amounts to be repaid within one year or the normal operating cycle, if longer. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease 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 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=120391452&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_LongTermDebtNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_MarketableSecuritiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 marketable security, 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://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 (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&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_MarketableSecuritiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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=121603541&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=121603541&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=121603541&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_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=120391452&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_PrepaidExpenseAndOtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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(7))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&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 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&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(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&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_PrepaidExpenseAndOtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=120391452&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=120400017&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=120391452&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_RestrictedCashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 and cash equivalents restricted as to withdrawal or usage, classified as current. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, 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 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&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 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3044-108585<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=120391452&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 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=SL98516268-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_RestrictedCashAndCashEquivalentsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 and cash equivalents restricted as to withdrawal or usage, classified as noncurrent. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, 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 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6812-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(17))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&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 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=SL98516268-108586<br><br>Reference 4: 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=121586364&amp;loc=d3e3044-108585<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 210<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120413173&amp;loc=SL116631458-115580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestrictedCashAndCashEquivalentsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (g)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<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)(23)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&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 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI http://asc.fasb.org/extlink&amp;oid=27010918&amp;loc=d3e74512-122707<br><br>Reference 3: http://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=120391452&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=120391452&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 210.5-02(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<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_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its 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 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=6405834&amp;loc=d3e23315-112656<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,30)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&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 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>13
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692483904088">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Dec. 26, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementOfFinancialPositionAbstract', window );"><strong>Statement of Financial Position [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Allowance for doubtful accounts</a></td>
<td class="nump">$ 232<span></span>
</td>
<td class="nump">$ 248<span></span>
</td>
</tr>
<tr class="re">
<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.001<span></span>
</td>
<td class="nump">$ 0.001<span></span>
</td>
</tr>
<tr class="ro">
<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 (in shares)</a></td>
<td class="nump">250,000,000<span></span>
</td>
<td class="nump">250,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, shares issued (in shares)</a></td>
<td class="nump">77,758,530<span></span>
</td>
<td class="nump">77,437,997<span></span>
</td>
</tr>
<tr class="ro">
<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 (in shares)</a></td>
<td class="nump">77,758,530<span></span>
</td>
<td class="nump">77,437,997<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TreasuryStockShares', window );">Treasury stock (in shares)</a></td>
<td class="nump">136,402<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_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts 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(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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=121611835&amp;loc=d3e5074-111524<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121599878&amp;loc=SL82895884-210446<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=120391452&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=120391452&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=120391452&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=120391452&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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 common and preferred shares that were previously issued and that were repurchased by the issuing entity and held in treasury on the financial statement date. This stock has no voting rights and receives no dividends.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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,30)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&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 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockShares</td>
</tr>
<tr>
<td style="padding-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>14
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692477271608">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Income - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Mar. 28, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementAbstract', window );"><strong>Income Statement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">$ 186,636<span></span>
</td>
<td class="nump">$ 160,753<span></span>
</td>
</tr>
<tr class="re">
<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 revenues</a></td>
<td class="nump">109,930<span></span>
</td>
<td class="nump">93,363<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">76,706<span></span>
</td>
<td class="nump">67,390<span></span>
</td>
</tr>
<tr class="re">
<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>
</tr>
<tr class="ro">
<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">24,046<span></span>
</td>
<td class="nump">21,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_SellingGeneralAndAdministrativeExpense', window );">Selling, general and administrative</a></td>
<td class="nump">30,015<span></span>
</td>
<td class="nump">27,693<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_OperatingExpenses', window );">Total operating expenses</a></td>
<td class="nump">54,061<span></span>
</td>
<td class="nump">48,960<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating income</a></td>
<td class="nump">22,645<span></span>
</td>
<td class="nump">18,430<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InvestmentIncomeInterest', window );">Interest income</a></td>
<td class="nump">194<span></span>
</td>
<td class="nump">685<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Interest expense</a></td>
<td class="num">(180)<span></span>
</td>
<td class="num">(318)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpense', window );">Other income (expense), net</a></td>
<td class="nump">172<span></span>
</td>
<td class="num">(91)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments', window );">Income before income taxes</a></td>
<td class="nump">22,831<span></span>
</td>
<td class="nump">18,706<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Provision for income taxes</a></td>
<td class="nump">3,206<span></span>
</td>
<td class="nump">2,816<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 19,625<span></span>
</td>
<td class="nump">$ 15,890<span></span>
</td>
</tr>
<tr class="ro">
<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>
</tr>
<tr class="re">
<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 (In dollars per share)</a></td>
<td class="nump">$ 0.25<span></span>
</td>
<td class="nump">$ 0.21<span></span>
</td>
</tr>
<tr class="ro">
<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 (In dollars per share)</a></td>
<td class="nump">$ 0.25<span></span>
</td>
<td class="nump">$ 0.20<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>Weighted-average 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>
</tr>
<tr class="ro">
<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 (in shares)</a></td>
<td class="nump">77,598<span></span>
</td>
<td class="nump">76,005<span></span>
</td>
</tr>
<tr class="re">
<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 (in shares)</a></td>
<td class="nump">79,988<span></span>
</td>
<td class="nump">78,510<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfGoodsAndServicesSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<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.2(a),(d))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&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_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 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22583-107794<br><br>Reference 2: 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> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<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 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1448-109256<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 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<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> -Subparagraph (a)<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=121326447&amp;loc=d3e1337-109256<br><br>Reference 7: 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=120380238&amp;loc=d3e4984-109258<br><br>Reference 8: 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(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<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 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=120380238&amp;loc=d3e3842-109258<br><br>Reference 10: 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 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22644-107794<br><br>Reference 11: 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 12: 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(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br><br>Reference 13: 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=121326447&amp;loc=d3e1252-109256<br><br>Reference 14: 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=121326447&amp;loc=SL5780133-109256<br><br>Reference 15: 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(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&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_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=120380238&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 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22644-107794<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 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=120380238&amp;loc=d3e3842-109258<br><br>Reference 4: 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=121326447&amp;loc=d3e1252-109256<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> -Subparagraph (b)<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 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 7: 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 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22583-107794<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=121326447&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 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 10: 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 11: 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(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 12: 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> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 13: 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=121326447&amp;loc=d3e1337-109256<br><br>Reference 14: 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(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&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_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-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 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 4: 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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 6: 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 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 7: 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 (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 8: 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=120395209&amp;loc=SL114868664-224227<br><br>Reference 9: 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 (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations before deduction of income tax expense (benefit) and income (loss) attributable to noncontrolling interest, and addition of income (loss) from equity method investments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-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 (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&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 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 5: 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=120395691&amp;loc=d3e23780-122690<br><br>Reference 6: 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=120311839&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<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 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32672-109319<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 (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&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 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=120395691&amp;loc=d3e23780-122690<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 9<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22663-107794<br><br>Reference 6: 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=120385591&amp;loc=d3e38679-109324<br><br>Reference 7: 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(9))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: 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 8<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_InterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 cost of borrowed funds accounted for as interest 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 835<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6450988&amp;loc=d3e26243-108391<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=119993939&amp;loc=d3e28555-108399<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 (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&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 (210.5-03(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<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.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&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_InterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_InvestmentIncomeInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 accretion (amortization) of purchase discount (premium) of interest income on nonoperating securities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<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> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIncomeInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=121641772&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 3: 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> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 4: 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=120399700&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> -Subparagraph (a)<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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 8: 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 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 9: 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=121641772&amp;loc=SL7669625-108580<br><br>Reference 10: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 11: 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=120400993&amp;loc=SL114874131-224263<br><br>Reference 12: 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=120395209&amp;loc=SL114868664-224227<br><br>Reference 13: 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=121586364&amp;loc=d3e3602-108585<br><br>Reference 14: 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 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22499-107794<br><br>Reference 15: 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 9<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22663-107794<br><br>Reference 16: 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 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 17: 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 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 18: 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 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22583-107794<br><br>Reference 19: 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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: 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 (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=SL5780133-109256<br><br>Reference 21: 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 (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 22: 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 (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 23: 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 8<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-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 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-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 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 4: 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 (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 5: 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=120311839&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherNonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (expense) related to nonoperating activities, classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&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_OtherNonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ResearchAndDevelopmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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_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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-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 40<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9031-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 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9038-108599<br><br>Reference 4: 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 (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 5: 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=120311839&amp;loc=d3e8933-108599<br><br>Reference 6: 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=121604090&amp;loc=SL49130543-203045<br><br>Reference 7: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 8: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 9: 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 42<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9054-108599<br><br>Reference 10: 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=121604090&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_SellingGeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=120395209&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_SellingGeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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 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 16<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&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://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 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 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1448-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692476823224">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Comprehensive Income - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Mar. 28, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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>
</tr>
<tr class="ro">
<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">$ 19,625<span></span>
</td>
<td class="nump">$ 15,890<span></span>
</td>
</tr>
<tr class="re">
<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 loss, net of tax:</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_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Translation adjustments and other</a></td>
<td class="num">(2,379)<span></span>
</td>
<td class="num">(399)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax', window );">Unrealized losses on available-for-sale marketable securities</a></td>
<td class="num">(131)<span></span>
</td>
<td class="num">(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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax', window );">Unrealized gains (losses) on derivative instruments</a></td>
<td class="num">(226)<span></span>
</td>
<td class="nump">176<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_OtherComprehensiveIncomeLossNetOfTax', window );">Other comprehensive loss, net of tax</a></td>
<td class="num">(2,736)<span></span>
</td>
<td class="num">(250)<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 );">Comprehensive income</a></td>
<td class="nump">$ 16,889<span></span>
</td>
<td class="nump">$ 15,640<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://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(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&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 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(24))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=d3e557-108580<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(26))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=SL7669625-108580<br><br>Reference 6: 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=121641772&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=121641772&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 3: 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> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 4: 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=120399700&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> -Subparagraph (a)<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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 8: 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 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 9: 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=121641772&amp;loc=SL7669625-108580<br><br>Reference 10: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 11: 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=120400993&amp;loc=SL114874131-224263<br><br>Reference 12: 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=120395209&amp;loc=SL114868664-224227<br><br>Reference 13: 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=121586364&amp;loc=d3e3602-108585<br><br>Reference 14: 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 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22499-107794<br><br>Reference 15: 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 9<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22663-107794<br><br>Reference 16: 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 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 17: 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 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 18: 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 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22583-107794<br><br>Reference 19: 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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: 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 (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=SL5780133-109256<br><br>Reference 21: 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 (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 22: 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 (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 23: 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 8<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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, of gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<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=121641772&amp;loc=d3e637-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 10A<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=SL7669646-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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=121641772&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 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<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=120395209&amp;loc=SL114868664-224227<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 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=121640130&amp;loc=d3e1436-108581<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 8: 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=121641772&amp;loc=SL7669625-108580<br><br>Reference 9: 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=120399700&amp;loc=SL114874048-224260<br><br>Reference 10: 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=120400993&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_OtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax and before adjustment, of unrealized holding gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale). Excludes unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to 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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=SL7669646-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 11<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=d3e637-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692473701976">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed 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>Treasury Stock</div></th>
<th class="th"><div>Additional Paid-in Capital</div></th>
<th class="th"><div>Accumulated Other Comprehensive Income (Loss)</div></th>
<th class="th"><div>Accumulated Deficit</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_SharesOutstanding', window );">Beginning balance (in shares) at Dec. 28, 2019</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">75,764,990<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="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. 28, 2019</a></td>
<td class="nump">$ 640,997<span></span>
</td>
<td class="nump">$ 76<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 885,821<span></span>
</td>
<td class="num">$ (659)<span></span>
</td>
<td class="num">$ (244,241)<span></span>
</td>
</tr>
<tr class="re">
<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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans', window );">Issuance of common stock under the Employee Stock Purchase Plan (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">311,591<span></span>
</td>
<td class="text">&#160;<span></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_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan', window );">Issuance of common stock under the Employee Stock Purchase Plan</a></td>
<td class="nump">4,066<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,066<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_StockIssuedDuringPeriodSharesShareBasedCompensationGross', window );">Issuance of common stock pursuant to exercise of options (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">55,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="re">
<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 pursuant to exercise of options</a></td>
<td class="nump">447<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">446<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_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures', window );">Issuance of common stock pursuant to vesting of restricted stock units (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25,901<span></span>
</td>
<td class="text">&#160;<span></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_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures', window );">Issuance of common stock pursuant to exercise of options</a></td>
<td class="num">(385)<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(385)<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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation</a></td>
<td class="nump">5,652<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,652<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_OtherComprehensiveIncomeLossNetOfTax', window );">Other comprehensive loss</a></td>
<td class="num">(250)<span></span>
</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">(250)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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">15,890<span></span>
</td>
<td class="text">&#160;<span></span>
</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">15,890<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_SharesOutstanding', window );">Ending balance (in shares) at Mar. 28, 2020</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">76,158,251<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="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 Mar. 28, 2020</a></td>
<td class="nump">666,417<span></span>
</td>
<td class="nump">$ 77<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">895,600<span></span>
</td>
<td class="num">(909)<span></span>
</td>
<td class="num">(228,351)<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_SharesOutstanding', window );">Beginning balance (in shares) at Dec. 26, 2020</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">77,437,997<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="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. 26, 2020</a></td>
<td class="nump">744,084<span></span>
</td>
<td class="nump">$ 78<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">903,838<span></span>
</td>
<td class="nump">5,886<span></span>
</td>
<td class="num">(165,718)<span></span>
</td>
</tr>
<tr class="re">
<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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans', window );">Issuance of common stock under the Employee Stock Purchase Plan (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">228,784<span></span>
</td>
<td class="text">&#160;<span></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_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan', window );">Issuance of common stock under the Employee Stock Purchase Plan</a></td>
<td class="nump">5,065<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,065<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_StockIssuedDuringPeriodSharesShareBasedCompensationGross', window );">Issuance of common stock pursuant to exercise of options (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50,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_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Issuance of common stock pursuant to exercise of options</a></td>
<td class="nump">422<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">422<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_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures', window );">Issuance of common stock pursuant to vesting of restricted stock units (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">41,749<span></span>
</td>
<td class="text">&#160;<span></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_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures', window );">Issuance of common stock pursuant to exercise of options</a></td>
<td class="num">(1,141)<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,141)<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_TreasuryStockSharesAcquired', window );">Purchase of common stock through repurchase program (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(136,402)<span></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_TreasuryStockValueAcquiredCostMethod', window );">Purchase of common stock through repurchase program</a></td>
<td class="num">(5,738)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (5,738)<span></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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation</a></td>
<td class="nump">6,952<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,952<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_OtherComprehensiveIncomeLossNetOfTax', window );">Other comprehensive loss</a></td>
<td class="num">(2,736)<span></span>
</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">(2,736)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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">19,625<span></span>
</td>
<td class="text">&#160;<span></span>
</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">19,625<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_SharesOutstanding', window );">Ending balance (in shares) at Mar. 27, 2021</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">77,758,530<span></span>
</td>
<td class="num">(136,402)<span></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 Mar. 27, 2021</a></td>
<td class="nump">$ 766,533<span></span>
</td>
<td class="nump">$ 78<span></span>
</td>
<td class="num">$ (5,738)<span></span>
</td>
<td class="nump">$ 915,136<span></span>
</td>
<td class="nump">$ 3,150<span></span>
</td>
<td class="num">$ (146,093)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase to additional paid-in capital (APIC) 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=120383193&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=120381028&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=120383193&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=121326096&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_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=121641772&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 3: 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> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 4: 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=120399700&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> -Subparagraph (a)<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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 8: 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 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 9: 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=121641772&amp;loc=SL7669625-108580<br><br>Reference 10: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 11: 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=120400993&amp;loc=SL114874131-224263<br><br>Reference 12: 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=120395209&amp;loc=SL114868664-224227<br><br>Reference 13: 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=121586364&amp;loc=d3e3602-108585<br><br>Reference 14: 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 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22499-107794<br><br>Reference 15: 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 9<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22663-107794<br><br>Reference 16: 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 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 17: 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 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 18: 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 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22583-107794<br><br>Reference 19: 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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: 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 (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=SL5780133-109256<br><br>Reference 21: 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 (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 22: 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 (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 23: 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 8<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_OtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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=121641772&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 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<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=120395209&amp;loc=SL114868664-224227<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 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=121640130&amp;loc=d3e1436-108581<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 8: 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=121641772&amp;loc=SL7669625-108580<br><br>Reference 9: 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=120399700&amp;loc=SL114874048-224260<br><br>Reference 10: 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=120400993&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_OtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_SharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 which are neither cancelled nor held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesOutstanding</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 as a result of an employee stock purchase 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 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=120397183&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=120391452&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=120391452&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_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans</td>
</tr>
<tr>
<td style="padding-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=120397183&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=120391452&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=120391452&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_StockIssuedDuringPeriodSharesShareBasedCompensationGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, before forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 change in value for stock issued during the period as a result of employee stock purchase 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 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=120397183&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 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=120391452&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=120391452&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_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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=120397183&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=120397183&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=120391452&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_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&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 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI http://asc.fasb.org/extlink&amp;oid=27010918&amp;loc=d3e74512-122707<br><br>Reference 3: http://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=120391452&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=120391452&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 210.5-02(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<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_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockSharesAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares that have been repurchased during the period and are being held in 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 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=120397183&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=120391452&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_TreasuryStockSharesAcquired</td>
</tr>
<tr>
<td style="padding-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_TreasuryStockValueAcquiredCostMethod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 cost of common and preferred stock that were repurchased during the period. Recorded using the cost 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 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 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<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=120397183&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_TreasuryStockValueAcquiredCostMethod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>17
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692477124040">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Cash Flows - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Mar. 28, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract', window );"><strong>Cash flows from operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 19,625<span></span>
</td>
<td class="nump">$ 15,890<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income to net cash provided by operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Depreciation', window );">Depreciation</a></td>
<td class="nump">6,130<span></span>
</td>
<td class="nump">4,561<span></span>
</td>
</tr>
<tr class="re">
<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</a></td>
<td class="nump">6,805<span></span>
</td>
<td class="nump">7,263<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_form_OperatingLeaseRightOfUseAssetAmortization', window );">Reduction in the carrying amount of right-of-use assets</a></td>
<td class="nump">1,811<span></span>
</td>
<td class="nump">1,511<span></span>
</td>
</tr>
<tr class="re">
<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 expense</a></td>
<td class="nump">7,077<span></span>
</td>
<td class="nump">5,623<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryWriteDown', window );">Provision for excess and obsolete inventories</a></td>
<td class="nump">3,394<span></span>
</td>
<td class="nump">3,287<span></span>
</td>
</tr>
<tr class="re">
<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 adjustments to reconcile net income to net cash provided by operating activities</a></td>
<td class="nump">2,140<span></span>
</td>
<td class="nump">407<span></span>
</td>
</tr>
<tr class="ro">
<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 assets and 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_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable</a></td>
<td class="nump">3,576<span></span>
</td>
<td class="nump">7,803<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="num">(9,911)<span></span>
</td>
<td class="nump">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_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">3,011<span></span>
</td>
<td class="num">(240)<span></span>
</td>
</tr>
<tr class="ro">
<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">(50)<span></span>
</td>
<td class="nump">194<span></span>
</td>
</tr>
<tr class="re">
<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="nump">5,722<span></span>
</td>
<td class="nump">763<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedLiabilities', window );">Accrued liabilities</a></td>
<td class="num">(12,732)<span></span>
</td>
<td class="num">(6,970)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherDeferredLiability', window );">Other liabilities</a></td>
<td class="nump">114<span></span>
</td>
<td class="nump">33<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInDeferredRevenue', window );">Deferred revenues</a></td>
<td class="num">(2,411)<span></span>
</td>
<td class="num">(123)<span></span>
</td>
</tr>
<tr class="re">
<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 liabilities</a></td>
<td class="num">(1,945)<span></span>
</td>
<td class="num">(1,591)<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">32,356<span></span>
</td>
<td class="nump">39,339<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract', window );"><strong>Cash flows from investing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Acquisition of property, plant and equipment</a></td>
<td class="num">(13,470)<span></span>
</td>
<td class="num">(12,050)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates', window );">Proceeds from sale of a subsidiary</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">40<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireMarketableSecurities', window );">Purchases of marketable securities</a></td>
<td class="num">(41,062)<span></span>
</td>
<td class="num">(16,441)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities', window );">Proceeds from maturities and sales of marketable securities</a></td>
<td class="nump">14,610<span></span>
</td>
<td class="nump">23,009<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">(39,922)<span></span>
</td>
<td class="num">(5,442)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Cash flows from financing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions', window );">Proceeds from issuances of common stock</a></td>
<td class="nump">5,487<span></span>
</td>
<td class="nump">4,513<span></span>
</td>
</tr>
<tr class="re">
<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 );">Purchase of common stock through stock repurchase program</a></td>
<td class="num">(5,738)<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_PaymentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Tax withholdings related to net share settlements of equity awards</a></td>
<td class="num">(1,141)<span></span>
</td>
<td class="num">(385)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RepaymentsOfLongTermDebt', window );">Principal repayments on term loans</a></td>
<td class="num">(2,376)<span></span>
</td>
<td class="num">(13,199)<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_NetCashProvidedByUsedInFinancingActivities', window );">Net cash used in financing activities</a></td>
<td class="num">(3,768)<span></span>
</td>
<td class="num">(9,071)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Effect of exchange rate changes on cash, cash equivalents and restricted cash</a></td>
<td class="num">(1,456)<span></span>
</td>
<td class="nump">312<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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Net increase (decrease) in cash, cash equivalents and restricted cash</a></td>
<td class="num">(12,790)<span></span>
</td>
<td class="nump">25,138<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash, cash equivalents and restricted cash, beginning of period</a></td>
<td class="nump">191,098<span></span>
</td>
<td class="nump">147,937<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash, cash equivalents and restricted cash, end of period</a></td>
<td class="nump">178,308<span></span>
</td>
<td class="nump">173,075<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NoncashInvestingAndFinancingItemsAbstract', window );"><strong>Non-cash investing and financing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_form_ChangeInCapitalExpendituresIncurredButNotYetPaid', window );">Change in accounts payable and accrued liabilities related to property, plant and equipment purchases</a></td>
<td class="nump">1,087<span></span>
</td>
<td class="num">(2,116)<span></span>
</td>
</tr>
<tr class="re">
<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 );">Operating lease, right-of-use assets obtained in exchange for lease obligations</a></td>
<td class="nump">8,572<span></span>
</td>
<td class="nump">6,307<span></span>
</td>
</tr>
<tr class="ro">
<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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxesPaidNet', window );">Cash paid for income taxes, net</a></td>
<td class="nump">1,034<span></span>
</td>
<td class="nump">2,419<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestPaidNet', window );">Cash paid for interest</a></td>
<td class="nump">173<span></span>
</td>
<td class="nump">291<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract', window );"><strong>Reconciliation of cash, cash equivalents and restricted cash:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Total cash, cash equivalents and restricted cash</a></td>
<td class="nump">$ 178,308<span></span>
</td>
<td class="nump">$ 173,075<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_form_ChangeInCapitalExpendituresIncurredButNotYetPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Change In Capital Expenditures Incurred But Not Yet Paid</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">form_ChangeInCapitalExpendituresIncurredButNotYetPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>form_</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_form_OperatingLeaseRightOfUseAssetAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, Right-Of-Use Asset, Amortization</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">form_OperatingLeaseRightOfUseAssetAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>form_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, 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 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3521-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 4<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3044-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 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=SL98516268-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract</td>
</tr>
<tr>
<td style="padding-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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, 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 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><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=121586364&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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=120395209&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_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=121586364&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_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, 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://www.xbrl.org/2003/role/disclosureRef<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_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeTaxesPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, net of any cash received during the current period as refunds for the overpayment of taxes.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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=121583591&amp;loc=d3e4297-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxesPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=121586364&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=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInDeferredRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a 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 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInDeferredRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=121586364&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_IncreaseDecreaseInOtherDeferredLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 deferred obligations 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=121586364&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_IncreaseDecreaseInOtherDeferredLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=121586364&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_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in prepaid expenses, and assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.</p></div>
<a 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 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=d3e4297-108586<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 17<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3367-108585<br><br>Reference 3: 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 25<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&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_InterestPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_InventoryWriteDown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 loss from reductions in inventory due to subsequent measurement adjustments, including, but not limited to, physical deterioration, obsolescence, or changes in price levels.</p></div>
<a 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> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4542-108314<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryWriteDown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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=121586364&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=121586364&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_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-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=121586364&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=121586364&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=121586364&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_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-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=121641772&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 3: 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> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 4: 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=120399700&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> -Subparagraph (a)<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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 8: 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 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 9: 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=121641772&amp;loc=SL7669625-108580<br><br>Reference 10: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 11: 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=120400993&amp;loc=SL114874131-224263<br><br>Reference 12: 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=120395209&amp;loc=SL114868664-224227<br><br>Reference 13: 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=121586364&amp;loc=d3e3602-108585<br><br>Reference 14: 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 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22499-107794<br><br>Reference 15: 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 9<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22663-107794<br><br>Reference 16: 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 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 17: 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 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 18: 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 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22583-107794<br><br>Reference 19: 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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: 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 (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=SL5780133-109256<br><br>Reference 21: 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 (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 22: 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 (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 23: 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 8<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_NoncashInvestingAndFinancingItemsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_NoncashInvestingAndFinancingItemsAbstract</td>
</tr>
<tr>
<td style="padding-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_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=121603541&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=121609121&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_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_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=121586364&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=121586364&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_PaymentsToAcquireMarketableSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 for purchase of marketable security.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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=121553693&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_PaymentsToAcquireMarketableSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=121586364&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_ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 deconsolidation of a previously consolidated subsidiary or sale of an entity that is related to it but not strictly controlled.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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=121586364&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_ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from issuance of shares under share-based payment arrangement. Includes, but is not limited to, option exercised.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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 2A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=SL79508275-113901<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 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&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_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 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://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=121553693&amp;loc=d3e26853-111562<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 11<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3151-108585<br><br>Reference 3: 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=121586364&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_ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_RepaymentsOfLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 for debt initially having maturity 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 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&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_RepaymentsOfLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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=121568110&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=121609121&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_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=121586364&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>18
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692470770888">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation and New Accounting Pronouncements<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock', window );">Basis of Presentation and New Accounting Pronouncements</a></td>
<td class="text">Basis of Presentation and New Accounting Pronouncements<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Basis of Presentation</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying condensed consolidated financial information of FormFactor,&#160;Inc. is unaudited and has been prepared in accordance with accounting principles generally accepted in the United States of America (&#8220;GAAP&#8221;) and pursuant to the rules and regulations of the Securities and Exchange Commission (&#8220;SEC&#8221;). However, such information reflects all adjustments, consisting only of normal recurring adjustments, which are, in the opinion of management, necessary for a fair presentation of the financial position, results of operations and cash flows for the interim periods. The condensed consolidated financial statements included herein should be read in conjunction with the consolidated financial statements and the notes thereto included in our 2020 Annual Report on Form 10-K filed with the SEC on February 22, 2021. The results of operations for the interim periods presented are not necessarily indicative of the results to be expected for the full year. </span></div><div style="text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Fiscal Year</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We operate on a 52/53 week fiscal year, whereby the fiscal year ends on the last Saturday of December. Fiscal 2021 and 2020 each contain 52 weeks and the three months ended March&#160;27, 2021 and March&#160;28, 2020 each contained 13 weeks. Fiscal 2021 will end on December&#160;25, 2021.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Significant Accounting Policies</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our significant accounting policies have not changed during the three months ended March&#160;27, 2021 from those disclosed in our Annual Report on Form&#160;10-K for the year ended December&#160;26, 2020.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Reclassifications</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certain immaterial reclassifications were made to the prior year financial statements to conform to the current year presentation.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">New Accounting Pronouncements</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">ASU 2019-12</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In December 2019, the Financial Accounting Standard Board (&#8220;FASB&#8221;) issued Accounting Standards Update (&#8220;ASU&#8221;) 2019-12, &#8220;Income Taxes (Topic 740),&#8221; which simplifies the accounting for income taxes by removing certain exceptions to the general principles in Topic 740. The amendments also improve consistent application of and simplify GAAP for other areas of Topic 740 by clarifying and amending existing guidance. This guidance is effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2020. We adopted ASU 2019-12 on a prospective basis on December 27, 2020, the first day of fiscal 2021. The adoption did not have a material effect on our consolidated financial position, results of operations or cash flows. </span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">ASU 2020-04</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In March 2020, the FASB issued ASU 2020-04, &#8220;Referenced Rate Reform (Topic 848) - Facilitation of the Effects of Reference Rate Reform on Financial Reporting.&#8221; The ASU provides temporary optional expedients and exceptions for applying generally accepted accounting principles to contract modifications and hedging relationships, subject to meeting certain criteria, that reference the London Interbank Offered Rate (&#8220;LIBOR&#8221;) or another reference rate expected to be discontinued. In January 2021, the FASB issued ASU 2021-01, &#8220;Reference Rate Reform (Topic 848),&#8221; which permits entities to apply optional expedients in Topic 848 to derivative instruments modified because of discounting transition resulting from reference rate reform. ASU 2020-04 became effective upon issuance and may be applied prospectively to contract modifications made on or before December 31, 2022. ASU 2021-01 became effective upon issuance and may be applied on a full retrospective basis as of any date from the beginning of an interim period that includes or is subsequent to March 12, 2020 or prospectively for contract modifications made on or before December 31, 2022. The Company has not yet applied the relief afforded by these standard amendments and is currently assessing contracts that will require modification due to reference rate reform to which these standard amendments may be applied.</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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 organization, consolidation and basis of presentation of financial statements disclosure, and significant accounting policies of the reporting entity. May be provided in more than one note to the financial statements, as long as users are provided with an understanding of (1) the significant judgments and assumptions made by an enterprise in determining whether it must consolidate a VIE and/or disclose information about its involvement with a VIE, (2) the nature of restrictions on a consolidated VIE's assets reported by an enterprise in its statement of financial position, including the carrying amounts of such assets, (3) the nature of, and changes in, the risks associated with an enterprise's involvement with the VIE, and (4) how an enterprise's involvement with the VIE affects the enterprise's financial position, financial performance, and cash flows.  Describes procedure if disclosures are provided in more than one note to 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 205<br> -URI http://asc.fasb.org/topic&amp;trid=2122149<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -URI http://asc.fasb.org/topic&amp;trid=2197479<br><br>Reference 3: 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><br>Reference 4: 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_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="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>19
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692469192584">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Concentration of Credit and Other Risks<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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_RisksAndUncertaintiesAbstract', window );"><strong>Risks and Uncertainties [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_ConcentrationRiskDisclosureTextBlock', window );">Concentration of Credit and Other Risks</a></td>
<td class="text">Concentration of Credit and Other Risks<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Each of the following customers accounted for 10% or more of our revenues for the periods indicated: </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Intel Corporation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">36.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Taiwan Semiconductor Manufacturing Co., LTD.</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">*</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">39.6&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">36.2&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:4pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">*Represents less than 10% of total revenues.</span></div>At March&#160;27, 2021, one customer accounted for 22.8% of gross accounts receivable. At December&#160;26, 2020, two customers accounted for 15.3% and 13.7% of gross accounts receivable, 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_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_RisksAndUncertaintiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RisksAndUncertaintiesAbstract</td>
</tr>
<tr>
<td style="padding-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>20
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692468922696">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories, net<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryDisclosureTextBlock', window );">Inventories, net</a></td>
<td class="text">Inventories, net <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories are stated at the lower of cost (principally standard cost, which approximates actual cost on a first in, first out basis) or net realizable value.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories, net, consisted of the following (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 26,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Raw materials</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">52,320&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">48,122&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Work-in-progress</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">35,466&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30,806&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Finished goods</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16,941&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">20,301&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">104,727&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">99,229&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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>21
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692469186968">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisition<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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 );">Acquisition</a></td>
<td class="text">Acquisition <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">High Precision Devices, Inc. Acquisition </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On October 19, 2020,  we acquired 100% of the shares of HPD for total consideration of $16.9 million, net of cash acquired of $1.7 million, which included an estimated adjustment for changes in working capital, which is not yet finalized. This acquisition brings highly specialized skills and know-how to address the unique test challenges within the emerging quantum computing, superconducting computing, and ultra-sensitive sensor markets which operate at temperatures as low as 30 millikelvin.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The acquisition was accounted for using the acquisition method of accounting, with FormFactor treated as the acquirer. The acquired assets and liabilities of HPD were recorded at their respective fair values including an amount for goodwill representing the difference between the acquisition consideration and the fair value of the identifiable net assets. </span></div><div style="text-align:justify;text-indent:27pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Our Condensed Consolidated Statements of Income include the financial results of HPD subsequent to the acquisition date of October 19, 2020. Revenue in fiscal 2020 related to HPD subsequent to the acquisition date that was included in our Condensed Consolidated Statements of Income was not material. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The acquisition price was allocated to the tangible and identified intangible assets acquired and liabilities assumed as of the closing date of the acquisition based upon their respective fair values. The fair values assigned to assets acquired and liabilities assumed were based on management&#8217;s assumptions as of the reporting date. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">We estimated the acquisition price and the allocation of fair value to assets acquired and liabilities assumed as of the acquisition date, October 19, 2020. We subsequently made certain immaterial adjustments within the measurement period to the preliminary acquisition price allocation. See Note 5, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">Goodwill and Intangible Assets</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">, for changes in identified intangible values and goodwill. Our purchase accounting remains open at March 27, 2021, subject to finalization of the fair value of </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">consideration and certain deferred tax items. The estimated fair value of assets acquired, including goodwill and intangibles, and liabilities assumed is as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:87.642%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.428%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash and cash equivalents</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,680&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,017&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventory</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,047&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant and equipment</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">669&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease, right of use assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,554&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">599&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tangible assets acquired</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,566&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,529)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable and accrued liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,268)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,554)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred tax liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,840)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total tangible assets acquired and liabilities assumed</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">375&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangible assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,520&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,665&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net Assets Acquired</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,560&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-indent:27pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The intangible assets as of the closing date of the acquisition included (in thousands): </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:67.174%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.280%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.347%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Weighted Average Useful Life (in years)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Developed technologies</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,500&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.0</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,600&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.0</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Order backlog</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">200&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.5</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade names</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">220&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.0</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total intangible assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,520&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8.2</span></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of the intangible assets acquired in connection with the acquisition was determined using either the income, market or replacement cost methodologies. The intangible assets are being amortized over periods which reflect the pattern in which economic benefits of the assets are expected to be realized.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Identifiable Intangible Assets</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Valuation of intangible assets involves multiple assumptions. The key assumptions are described below.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Developed technology acquired primarily consists of existing technology related to cryogenic probe stations, Adiabatic Demagnetization Refrigerator (&#8220;ADR&#8221;), and continuous ADR cryostats and similar tools, and technology related to other cryogenic applications. We valued the developed technology using the multi-period excess earnings method under the income approach. Using this approach, the estimated fair values were calculated using expected future cash flows from specific products discounted to their net present values at an appropriate risk-adjusted rate of return. </span></div><div style="text-align:justify;text-indent:27pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The value of customer relationships represents the fair value of future projected revenues that will be derived from the sale of products to HPD's existing customers. We valued customer relationships using the incremental cash flow method. This method estimates value based on the incremental cash flow afforded by having the customers relationships in place on the acquisition date versus having no relationships in place and needing to replicate or replace those relationships. The incremental cash flows are then discounted to a present value to arrive at an estimate of fair value for this asset class.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Order backlog represents the value of future sales under existing contracts as of the acquisition date. Expected cash flow from order backlog was valued on a discounted direct cash flow basis, net of returns on contributory assets such as working capital, property and equipment, trade name and assembled workforce.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The identified trade names intangibles relate to the estimated fair value of future cash flows related to the HPD brand. We valued trade names by applying the relief-from-royalty method under the income approach. This method is based on the application of a royalty rate to forecasted revenue under the trade name. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Goodwill</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The excess of purchase price over the fair value assigned to the assets acquired and liabilities assumed represents the amount of goodwill resulting from the acquisition. We believe the factors that contributed to goodwill include synergies that are specific to our consolidated business, such as cost savings and operational efficiencies, and the acquisition of a talented workforce that expands our expertise in business development and commercializing semiconductor test products, none of which qualify for recognition as a separate intangible asset. We do not expect any portion of this goodwill to be deductible for tax purposes. The goodwill attributable to the acquisition was recorded as a non-current asset and is not amortized, but is subject to an annual review for impairment. </span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The goodwill arising from the acquisition was allocated to the HPD reporting unit within the Systems reportable segment. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have not presented unaudited combined pro forma financial information as the HPD acquisition was not significant to our consolidated results of operations and financial position.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Baldwin Park Acquisition </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On July 30, 2020, we acquired the probe card assets of Advantest Corporation for total cash consideration of $35.0 million. This acquisition brings important enabling technologies and capabilities for designing and manufacturing advanced probe cards, and adds a complementary 3D-NAND Flash probe-card product that is qualified and in production at one of the world's leading NAND Flash manufacturers.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The acquisition was accounted for using the acquisition method of accounting, with FormFactor treated as the acquirer. The acquired assets and liabilities of Baldwin Park were recorded at their respective fair values including an amount for goodwill representing the difference between the acquisition consideration and the fair value of the identifiable net assets. </span></div><div style="text-align:justify;text-indent:27pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Our Condensed Consolidated Statements of Income include the financial results of Baldwin Park subsequent to the acquisition date of July 30, 2020. Revenue related to Baldwin Park since the acquisition date that was included in our Condensed Consolidated Statements of Income for fiscal 2020 was not material. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">We estimated the acquisition price and the allocation of fair value to assets acquired and liabilities assumed as of the acquisition date, July 30, 2020. We subsequently made certain immaterial adjustments within the measurement period to the acquisition price allocation as a result of finalization of our valuation of identifiable assets and liabilities. See Note 5, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">Goodwill and Intangible Assets,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"> for changes in identified intangible values and goodwill. In the current quarter ended March&#160;27, 2021, we finalized our allocation of the assets acquired, including goodwill and intangibles, and liabilities assumed for the purchase as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:87.642%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.428%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount </span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,365&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventory</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,727&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant and equipment</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,053&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease, right of use assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">519&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tangible assets acquired</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,720&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable and accrued liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(743)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(519)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total net tangible assets acquired and liabilities assumed</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,458&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangible assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,600&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,942&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net assets acquired</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,000&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The intangible assets as of July 30, 2020 included (in thousands): </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:67.174%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.280%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.347%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Weighted Average Useful Life (in years)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Developed technologies</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,800&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.0</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,400&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.0</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">In-process research and development</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">400&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">N/A</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total intangible assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,600&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.7</span></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Indications of fair value of the intangible assets acquired in connection with the acquisition were determined using either the income, market or replacement cost methodologies. The intangible assets are being amortized over periods which reflect the pattern in which economic benefits of the assets are expected to be realized.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Identifiable Intangible Assets</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Valuation of intangible assets involves multiple assumptions. The key assumptions are described below.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Developed technology acquired consists of existing technology related to 3D NAND Flash probe cards and the value expected to be derived from interconnect technology. We valued the developed technology related to 3D NAND Flash using the multi-period excess earnings method under the income approach. Using this approach, the estimated fair values were calculated using expected future cash flows from specific products discounted to their net present values at an appropriate risk-adjusted rate of return. We valued the interconnect developed technology asset using the incremental cash flow method. This method estimates value based on the incremental cash flow afforded by having the interconnect capability in place on the acquisition date versus having no capability in place and needing to replicate or replace that capability. The incremental cash flows are then discounted to a present value to arrive at an estimate of fair value for this asset class.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In-process research and development (&#8220;IPR&amp;D&#8221;) acquired primarily consists of research and development projects that were in process at the time of acquisition related to technologies used in DRAM probe cards. Once these projects are complete they will be amortized over their useful life. We valued the IPR&amp;D using the multi-period excess earnings method under the income approach. Using this approach, the estimated fair values were calculated using expected future cash flows from specific products discounted to their net present values at an appropriate risk-adjusted rate of return. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The value of customer relationships represents the fair value of future projected revenues that will be derived from the sale of products to Baldwin Park's existing customers. We valued customer relationships using the incremental cash flow method. This method estimates value based on the incremental cash flow afforded by having the customers relationships in place on the acquisition date versus having no relationships in place and needing to replicate or replace those relationships. The incremental cash flows are then discounted to a present value to arrive at an estimate of fair value for this asset class.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Goodwill</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The excess of purchase price over the fair value assigned to the assets acquired and liabilities assumed represents the amount of goodwill resulting from the acquisition. We believe the factors that contributed to goodwill include synergies that are specific to our consolidated business, such as cost savings and operational efficiencies, and the acquisition of a talented workforce that expands our expertise in business development, none of which qualify for recognition as a separate intangible asset. We expect this goodwill to be deductible for tax purposes. The goodwill attributable to the acquisition was recorded as a non-current asset and is not amortized, but is subject to an annual review for impairment. </span></div><div style="text-align:justify;text-indent:18pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The goodwill arising from the acquisition was allocated to the Probe Cards reporting unit within the Probe Cards reportable segment. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have not presented unaudited combined pro forma financial information as the Baldwin Park acquisition was not significant to our consolidated results of operations and financial position.</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>22
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692468926680">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Intangible Assets<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsDisclosureTextBlock', window );">Goodwill and Intangible Assets</a></td>
<td class="text">Goodwill and Intangible Assets <div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Goodwill by reportable segment was as follows (in thousands):</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:60.157%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.331%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Probe Cards</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Systems</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Goodwill, gross, as of December 28, 2019</span></td><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">172,482&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,714&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">199,196&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Addition - FRT GmbH Acquisition</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">975&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">975&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Addition - Baldwin Park Acquisition</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,590&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,590&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Addition - HPD Acquisition</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,654&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,654&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign currency translation</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,346&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,346&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Goodwill, gross, as of December 26, 2020</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">178,072&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">34,689&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">212,761&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Addition - Baldwin Park Acquisition</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">352&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">352&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Addition - HPD Acquisition</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,011&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,011&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign currency translation</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(906)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(906)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Goodwill, gross, as of March 27, 2021</span></td><td colspan="3" style="display:none"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">178,424&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">35,794&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">214,218&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-indent:18pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have not recorded goodwill impairments for the three months ended March&#160;27, 2021.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Intangible assets were as follows (in thousands): </span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:27.847%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.018%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27, 2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 26, 2020</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Intangible Assets </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Developed technologies </span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">173,318&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">142,344&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30,974&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">176,265&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">137,754&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">38,511&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Trade names</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,100&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,418&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">682&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,162&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,363&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">799&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">51,557&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">34,899&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16,658&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">52,488&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">33,378&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19,110&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Backlog</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,969&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,897&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">72&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,227&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,900&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">327&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">In-process research and development</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">400&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">400&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">400&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">400&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">235,344&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">186,558&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">48,786&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">239,542&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">180,395&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">59,147&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortization expense was included in our Condensed Consolidated Statements of Income as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,090&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,750&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Selling, general and administrative</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,715&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,513&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,805&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,263&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The estimated future amortization of definite-lived intangible assets, excluding in-process research and development, is as follows (in thousands): </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:86.473%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.327%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fiscal Year</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Remainder of 2021</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,933&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2022</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,591&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2023</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,240&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,625&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,364&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,633&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">48,386&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for all or part of the information related to intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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_IntangibleAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692470692680">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accrued Liabilities<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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_PayablesAndAccrualsAbstract', window );"><strong>Payables and Accruals [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 Liabilities</a></td>
<td class="text">Accrued Liabilities<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued liabilities consisted of the following (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 26,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued compensation and benefits</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,092&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">33,110&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued income and other taxes</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,008&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,976&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued warranty</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,719&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,918&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Employee stock purchase plan contributions withheld</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,109&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,240&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued contingent consideration </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,884&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,012&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other accrued expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,656&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,086&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43,468&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">55,342&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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=120391452&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_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-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>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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692468936856">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value and Derivative Instruments<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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 and Derivative Instruments</a></td>
<td class="text">Fair Value and Derivative Instruments<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Whenever possible, the fair values of our financial assets and liabilities are determined using quoted market prices of identical securities or quoted market prices of similar securities from active markets. The three levels of inputs that may be used to measure fair value are as follows:</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 1 valuations are obtained from real-time quotes for transactions in active exchange markets involving identical securities;</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 2 valuations utilize significant observable inputs, such as quoted prices for similar assets or liabilities, quoted prices near the reporting date in markets that are less active, or other inputs that are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities; and</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 3 valuations utilize unobservable inputs to the valuation methodology and include our own data about assumptions market participants would use in pricing the asset or liability based on the best information available under the circumstances.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We did not have any transfers of assets or liabilities measured at fair value on a recurring basis to or from Level 1, Level 2 or Level 3 during the three months ended March&#160;27, 2021 or the year ended December&#160;26, 2020.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The carrying values of Cash, Accounts receivable, net, Restricted cash, Prepaid expenses and other current assets, Accounts payable, Accrued liabilities, and term loans, net of unamortized issuance costs, approximate fair value due to their short maturities. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">No changes were made to our valuation techniques during the first three months of fiscal 2021.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Assets and Liabilities Measured at Fair Value on a Recurring Basis</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Assets and liabilities measured at fair value on a recurring basis were as follows (in thousands):&#160;</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.561%"><tr><td style="width:1.0%"/><td style="width:46.036%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.385%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27, 2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Level 1</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Level 2</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Level 3</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Assets:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash equivalents:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Money market funds</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">34,254&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">34,254&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Commercial paper</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,500&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,500&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt 0 25.75pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">39,754&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">39,754&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Marketable securities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;U.S. treasuries</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,669&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,669&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Certificates of deposit</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,212&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,212&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;U.S. agency securities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">575&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">575&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Corporate bonds</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">44,146&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">44,146&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Commercial paper</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15,491&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15,491&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt 0 7.75pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,669&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">61,424&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">94,093&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign exchange derivative contracts (Designated)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">144&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">144&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest rate swap derivative contracts</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">745&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">745&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">72,423&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">62,313&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">134,736&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign exchange derivative contracts (Designated)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(100)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(100)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest rate swap derivative contracts</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(113)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(113)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Contingent consideration</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,884)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,884)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(213)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,884)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4,097)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.561%"><tr><td style="width:1.0%"/><td style="width:46.036%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.385%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 26, 2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Level 1</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Level 2</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Level 3</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Assets:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash equivalents:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Money market funds</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43,019&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43,019&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Marketable securities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. treasuries</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">40,726&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">40,726&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Certificates of deposit</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,179&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,179&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. agency securities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">575&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">575&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Corporate bonds</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,330&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,330&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">40,726&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,084&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">67,810&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign exchange derivative contracts</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,057&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,057&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest rate swap derivative contracts</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">57&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">57&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">83,745&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,198&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">111,943&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Liabilities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest rate swap derivative contracts</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(87)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(87)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Contingent consideration</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4,012)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4,012)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(87)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4,012)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4,099)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Cash Equivalents </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of our cash equivalents is determined based on quoted market prices for similar or identical securities. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Marketable Securities </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We classify our marketable securities as available-for-sale and value them utilizing a market approach. Our investments are priced by pricing vendors who provide observable inputs for their pricing without applying significant judgment. Broker pricing is used mainly when a quoted price is not available, the investment is not priced by our pricing vendors or when a broker price </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">is more reflective of fair value. Our broker-priced investments are categorized as Level 2 investments because fair value is based on similar assets without applying significant judgments. In addition, all investments have a sufficient trading volume to demonstrate that the fair value is appropriate.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Unrealized gains and losses were immaterial and were recorded as a component of Accumulated other comprehensive income in our Condensed Consolidated Balance Sheets. We did not have any other-than-temporary unrealized gains or losses at either period end included in these financial statements.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Contingent Consideration</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contingent consideration, arising from the acquisition of FRT, is a cash amount equal to 1.5x EBIT as defined in the purchase agreement, up to a maximum of &#8364;10.3&#160;million, payable subject to the performance of the acquired business in calendar 2020. We estimated the fair value of contingent consideration using a probability weighted approach. Key assumptions in determining the fair value of contingent consideration included estimating EBIT levels that we believed as of the acquisition date were likely to be achieved during the performance period and discounting at an appropriate discount rate. Contingent consideration as of March&#160;27, 2021 was estimated to be $3.9 million, with the change from December&#160;26, 2020 resulting from foreign currency translation.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Interest Rate Swaps </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of our interest rate swap contracts is determined at the end of each reporting period based on valuation models that use interest rate yield curves as inputs. For accounting purposes, our interest rate swap contracts qualify for, and are designated as, cash flow hedges. The cash flows associated with the interest rate swaps are reported in Net cash provided by operating activities in our Condensed Consolidated Statements of Cash Flows and the fair value of the interest rate swap contracts are recorded within Accrued liabilities and Other liabilities in our Condensed Consolidated Balance Sheets. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The impact of the interest rate swaps on our Condensed Consolidated Statements of Income was as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:36.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.605%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount of Gain or (Loss) Recognized in OCI on Derivative (Effective Portion)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Location of Gain or (Loss) Reclassified from Accumulated OCI into Income (Effective Portion)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount of Gain or (Loss) Reclassified from Accumulated OCI into Income (Effective Portion)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Location of Gain or (Loss) Recognized in Income on Derivative (Ineffective Portion)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount of Gain or (Loss) Recognized in Income on Derivative (Ineffective Portion)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 27, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">624&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(38)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 28, 2020</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(96)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Foreign Exchange Derivative Contracts</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We operate and sell our products in various global markets. As a result, we are exposed to changes in foreign currency exchange rates. We utilize foreign currency forward contracts to hedge against future movements in foreign exchange rates that affect certain existing foreign currency denominated assets and liabilities and forecasted foreign currency revenue and expense transactions. Under this program, our strategy is to have increases or decreases in our foreign currency exposures mitigated by gains or losses on the foreign currency forward contracts in order to mitigate the risks and volatility associated with foreign currency transaction gains or losses. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We do not use derivative financial instruments for speculative or trading purposes. For accounting purposes, certain of our foreign currency forward contracts are not designated as hedging instruments and, accordingly, we record the fair value of these contracts as of the end of our reporting period in our Condensed Consolidated Balance Sheets with changes in fair value recorded within Other income (expense), net in our Condensed Consolidated Statement of Income for both realized and unrealized gains and losses. Certain of our foreign currency forward contracts are designated as cash flow hedges, and, accordingly, we record the fair value of these contracts as of the end of our reporting period in our Condensed Consolidated Balance Sheets with changes in fair value recorded as a component of Accumulated other comprehensive income and reclassified into earnings in the same period in which the hedged transaction affects earnings, and in the same line item on the Condensed Consolidated Statements of Income as the impact of the hedge transaction. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of our foreign exchange derivative contracts was determined based on current foreign currency exchange rates and forward points. All of our foreign exchange derivative contracts outstanding at March&#160;27, 2021 will mature by the first quarter of fiscal 2022.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides information about our foreign currency forward contracts outstanding as of March&#160;27, 2021 (in thousands):</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.853%"><tr><td style="width:1.0%"/><td style="width:55.854%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.345%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.248%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.251%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Currency</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Contract Position</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Contract Amount<br/>(Local Currency)<br/></span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Contract Amount<br/>(U.S. Dollars)<br/></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Euro Dollar</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Buy</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(10,141)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(12,025)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Euro Dollar</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sell</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,043&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,026&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Japanese Yen</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Buy</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,971,765)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(17,977)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Korean Won</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sell</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,129,743&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,767&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Taiwan Dollar</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sell</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,972&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">279&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total USD notional amount of outstanding foreign exchange contracts</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(13,930)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our foreign currency contracts are classified within Level 2 of the fair value hierarchy as they are valued using pricing models that utilize observable market inputs.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The impact of foreign exchange derivative contracts not designated as cash flow hedges on our Condensed Consolidated Statements of Income was as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:37.350%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:33.549%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.180%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.331%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount of Gain (Loss) Recognized on Derivatives</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Derivatives Not Designated as Hedging Instruments</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Location of Gain (Loss) Recognized on Derivatives</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign exchange forward contracts</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other income (expense), net</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,288&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(115)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The impact of foreign exchange derivative contracts designated as cash flow hedges on our Condensed Consolidated Statements of Income was as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:42.467%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:28.285%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.332%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount of Gain (Loss) Recognized in Accumulated OCI on Derivative </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Location of Gain (Loss) Reclassified from Accumulated OCI into Income </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount of Gain (Loss) Reclassified from Accumulated OCI into Income </span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 27, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(526)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">250&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Selling, general and administrative</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">82&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">362&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 28, 2020</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(120)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(18)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Selling, general and administrative</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(43)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(181)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:12pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Assets and Liabilities Measured at Fair Value on a Non-Recurring Basis</span></div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We measure and report our non-financial assets such as Property, plant and equipment, Goodwill and Intangible assets at fair value on a non-recurring basis if we determine these assets to be impaired or in the period when we make a business acquisition. Other than as discussed in Note 4, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Acquisition</span>, there were no assets or liabilities measured at fair value on a nonrecurring basis during the three months ended March&#160;27, 2021 or March&#160;28, 2020.<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>25
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692471262264">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Warranty<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductWarrantiesDisclosuresAbstract', window );"><strong>Product Warranties Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductWarrantyDisclosureTextBlock', window );">Warranty</a></td>
<td class="text">Warranty<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We offer warranties on certain products and record a liability for the estimated future costs associated with warranty claims at the time revenue is recognized. The warranty liability is based upon historical experience and our estimate of the level of future costs. While we engage in product quality programs and processes, our warranty obligation is affected by product failure rates, </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">material usage and service delivery costs. We continuously monitor product returns for warranty and maintain a reserve for the related expenses based upon our historical experience and any specifically identified failures. As we sell new products to our customers, we must exercise considerable judgment in estimating the expected failure rates. This estimating process is based on historical experience of similar products, as well as various other assumptions that we believe to be reasonable under the circumstances. We provide for the estimated cost of product warranties at the time revenue is recognized as a component of Cost of revenues in our Condensed Consolidated Statement of Income.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in our warranty liability were as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Balance at beginning of period</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,918&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,942&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accruals</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,374&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">660&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Settlements</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,573)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(684)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Balance at end of period</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,719&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,918&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantiesDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantiesDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for standard and extended product warranties and other product guarantee contracts, including a tabular reconciliation of the changes in the guarantor's aggregate product warranty liability for the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -URI http://asc.fasb.org/topic&amp;trid=2155896<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692469131752">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property, Plant, and Equipment, net<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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, Plant and Equipment, net</a></td>
<td class="text">Property, Plant and Equipment, net<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property, plant and equipment, net consisted of the following (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.461%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 26,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Land</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,751&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,751&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Machinery and equipment </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">233,357&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">226,185&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Computer equipment and software</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43,839&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">36,361&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Furniture and fixtures </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,925&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,894&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Leasehold improvements </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">80,011&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">79,144&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sub-total </span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">368,883&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">353,335&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: Accumulated depreciation and amortization </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(298,865)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(294,468)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net, property, plant and equipment </span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">70,018&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">58,867&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Construction-in-process</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">42,294&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">45,236&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">112,312&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">104,103&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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 asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</p></div>
<a 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 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99893-112916<br><br>Reference 2: 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><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=SL120174063-112916<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99779-112916<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>27
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692470446296">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders&#8217; Equity and Stock-Based Compensation<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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&#8217; Equity and Stock-Based Compensation</a></td>
<td class="text">Stockholders&#8217; Equity and Stock-Based Compensation<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Common Stock Repurchase Program</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On October 26, 2020, our Board of Directors authorized a program to repurchase up to $50&#160;million of outstanding common stock to offset potential dilution from issuances of common stock under our stock-based compensation plans. The share repurchase program will expire on October 28, 2022. During the three months ended March&#160;27, 2021, we repurchased 136,402 shares of common stock for $5.7 million and, as of March&#160;27, 2021, $44.3 million remained available for future repurchases.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our policy related to repurchases of our common stock is to charge the excess of cost over par value to additional paid-in capital once the shares are retired. All repurchases were made in compliance with Rule 10b-18 under the Securities Exchange Act of 1934, as amended.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Restricted Stock Units</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Restricted stock unit (&#8220;RSU&#8221;) activity under our equity incentive plan was as follows:</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Units</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted Average Grant Date Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">RSUs at December 26, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,840,922&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19.80&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Awards granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,765&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">46.25&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Awards vested</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(67,635)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16.38&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Awards forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(11,140)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">21.21&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">RSUs at March 27, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,770,912&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19.96&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Performance Restricted Stock Units</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We may grant Performance RSUs (&#8220;PRSUs&#8221;) to certain executives, which vest based upon us achieving certain market performance criteria. There were no PRSUs granted during the three months ended March&#160;27, 2021. PRSUs are included as part of the RSU activity above.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Stock Options</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Stock option activity under our equity incentive plan was as follows:</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:46.498%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.527%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.272%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.527%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.272%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.527%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.272%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.527%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.278%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Options Outstanding</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted Average Exercise Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted Average Remaining Contractual Life in Years</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Aggregate Intrinsic Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Outstanding at December 26, 2020</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">106,000&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.35&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Options exercised</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(50,000)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.44&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Outstanding at March 27, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">56,000&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.28&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.92</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,078,820&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Vested and expected to vest at March 27, 2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">56,000&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.28&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.92</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,078,820&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Exercisable at March 27, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">56,000&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.28&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.92</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,078,820&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Employee Stock Purchase Plan </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information related to activity under our Employee Stock Purchase Plan (&#8220;ESPP&#8221;) was as follows: </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.853%"><tr><td style="width:1.0%"/><td style="width:85.869%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.346%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27, 2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Shares issued</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">228,784&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted average per share purchase price</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22.14&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted average per share discount from the fair value of our common stock on the date of issuance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(18.73)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Stock-Based Compensation</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Stock-based compensation was included in our Condensed Consolidated Statements of Income as follows (in thousands): </span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,335&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">937&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,689&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,439&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Selling, general and administrative</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,053&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,247&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total stock-based compensation</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,077&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,623&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Unrecognized Compensation Costs</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At March&#160;27, 2021, the unrecognized stock-based compensation was as follows (dollars in thousands):&#160;</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unrecognized Expense</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Average Expected Recognition Period in Years</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Restricted stock units</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,429&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2.03</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Performance restricted stock units</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,719&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1.93</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Employee stock purchase plan</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">973&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.86</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total unrecognized stock-based compensation expense</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">36,121&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1.99</span></td></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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(e)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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=120397183&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 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>28
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692469228360">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Net Income per Share<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">Net Income per Share</a></td>
<td class="text">Net Income per Share<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table reconciles the shares used in calculating basic net income per share and diluted net income per share (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:75.654%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.157%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.159%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted-average shares used in computing basic net income per share</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">77,598&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">76,005&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add potentially dilutive securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,390&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,505&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted-average shares used in computing diluted net income per share</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">79,988&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">78,510&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Securities not included as they would have been antidilutive</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for earnings per share.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109243012&amp;loc=SL65017193-207537<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 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -URI http://asc.fasb.org/topic&amp;trid=2144383<br><br>Reference 4: 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 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_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692470691016">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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">Commitments and Contingencies<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Leases</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See Note 13, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Leases</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Contractual Obligations and Commitments</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our contractual obligations and commitments have not materially changed as of March&#160;27, 2021 from those disclosed in our Annual Report on Form 10-K for the year ended December&#160;26, 2020. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Legal Matters</span></div>From time to time, we may be subject to legal proceedings and claims in the ordinary course of business. As of March&#160;27, 2021, and as of the filing of this Quarterly Report on Form&#160;10-Q, we were not involved in any material legal proceedings.<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><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559207&amp;loc=d3e25336-109308<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559207&amp;loc=d3e25336-109308<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>30
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692470470616">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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 );">Leases</a></td>
<td class="text">LeasesWe lease real estate space under non-cancelable operating lease agreements for commercial and industrial space, as well as for our corporate headquarters located in Livermore, California. Our leases have remaining terms of 1 to 8 years, and some leases include options to extend up to 20 years. We also have operating leases for automobiles with remaining lease terms of 1 to 4 years. We did not include any of our renewal options in our lease terms for calculating our lease liability as the renewal options allow us to maintain operational flexibility and we are not reasonably certain we will exercise these options at this time. The weighted-average remaining lease term for our operating leases was 6 years as of March&#160;27, 2021 and the weighted-average discount rate was 3.85%. <div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of lease expense were as follows (in thousands): </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Lease expense:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating lease expense</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,123&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,924&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Short-term lease expense</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">37&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">40&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Variable lease expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">537&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">383&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,697&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,347&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Future minimum payments under our non-cancelable operating leases were as follows as of March&#160;27, 2021 (in thousands):</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:85.742%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.328%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fiscal Year</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Remainder of 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,747&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,040&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,710&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,297&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,814&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">14,416&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;Total minimum lease payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">50,024&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: interest</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(8,982)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;Present value of net minimum lease payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41,042&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: current portion</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(7,557)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;Total long-term operating lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">33,485&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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>31
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692468900984">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">Revenue</a></td>
<td class="text">Revenue<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Transaction price allocated to the remaining performance obligations:</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> On March&#160;27, 2021, we had $6.3 million of remaining performance obligations, which were comprised of deferred service contracts and extended warranty contracts and contracts with overtime revenue recognition that are not yet delivered.&#160;We expect to recognize approximately&#160;74.5% of our remaining performance obligations as revenue in the remainder of fiscal 2021, approximately 16.6% in fiscal 2022, and approximately 8.9% in fiscal 2023 and thereafter. The foregoing excludes the value of other remaining performance obligations as they have original durations of one year or less, and also excludes information about variable consideration allocated entirely to a wholly unsatisfied performance obligation.  </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Contract balances:</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;The timing of revenue recognition may differ from the timing of invoicing to customers. Accounts receivable is recorded at the invoiced amount, net of an allowance for doubtful accounts. A receivable is recognized in the period we deliver goods or provide services or when our right to consideration is unconditional. A contract asset is recorded when we have performed under the contract but our right to consideration is conditional on something other than the passage of time. Contract assets as of March&#160;27, 2021 and December&#160;26, 2020 were $4.8 million and $3.7 million, respectively, and are reported on the Condensed Consolidated Balance Sheets as a component of Prepaid expenses and other current assets.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contract liabilities include payments received in advance of performance under a contract and are satisfied as the associated revenue is recognized. Contract liabilities are reported on the Condensed Consolidated Balance Sheets at the end of each reporting period as a component of Deferred revenue and Other liabilities. Contract liabilities as of March&#160;27, 2021 and December&#160;26, 2020 were $19.9 million and $22.2 million, respectively. During the three months ended March&#160;27, 2021, we recognized $9.3 million of revenue, that was included in contract liabilities as of December&#160;26, 2020.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Costs to obtain a contract:</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> We generally expense sales commissions when incurred as a component of Selling, general and administrative expense, as the amortization period is typically less than one year. </span></div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Revenue by Category: </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Refer to Note 15, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Operating Segments and Enterprise-Wide Information</span>, for further details.<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -URI http://asc.fasb.org/topic&amp;trid=49130388<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 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130551-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 50<br> -Paragraph 13<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130556-203045<br><br>Reference 4: 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 12<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-203045<br><br>Reference 5: 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 9<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130550-203045<br><br>Reference 6: 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 12<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-203045<br><br>Reference 7: 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 12<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-203045<br><br>Reference 8: 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 12<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-203045<br><br>Reference 9: 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 15<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130558-203045<br><br>Reference 10: 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 12<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130554-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_RevenueFromContractWithCustomerTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692470661448">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Operating Segments and Enterprise-Wide Information<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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 );">Operating Segments and Enterprise-Wide Information</a></td>
<td class="text">Operating Segments and Enterprise-Wide Information<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our chief operating decision maker (&#8220;CODM&#8221;) is our Chief Executive Officer, who reviews operating results to make decisions about allocating resources and assessing performance for the entire company. We operate in two reportable segments consisting of the Probe Cards segment and the Systems segment. The following table summarizes the operating results by reportable segment (dollars in thousands):</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.853%"><tr><td style="width:1.0%"/><td style="width:11.784%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.295%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.002%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.002%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.295%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.295%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.002%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.002%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.299%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="45" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="21" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27, 2021</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="21" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28, 2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Probe Cards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Systems</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate and Other</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Probe Cards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Systems</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate and Other</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158,898&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,738&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">186,636&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">134,715&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,038&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">160,753&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit </span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">70,315&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,599&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(7,208)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">76,706&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">60,743&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,334&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(6,687)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">67,390&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross margin</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">44.3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">49.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">45.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">51.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.122%"><tr><td style="width:1.0%"/><td style="width:11.879%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.224%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.389%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.224%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.389%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.224%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.389%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.224%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.389%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.224%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.389%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.224%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.389%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.371%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.389%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.383%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Operating results provide useful information to our management for assessment of our performance and results of operations. Certain components of our operating results are utilized to determine executive compensation along with other measures. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Corporate and Other includes unallocated expenses relating to amortization of intangible assets, inventory and fixed asset fair value adjustments due to acquisitions and share-based compensation, which are not used in evaluating the results of, or in allocating resources to, our reportable segments.</span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certain revenue category information by reportable segment was as follows (in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:41.443%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.818%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.818%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.818%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.818%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.818%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.117%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27, 2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28, 2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Probe Cards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Systems</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Probe Cards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Systems</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Market:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foundry &amp; Logic</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">113,410&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">113,410&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">105,745&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">105,745&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">DRAM</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">33,898&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">33,898&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,696&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,696&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Flash</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,590&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,590&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,274&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,274&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Systems</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,738&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,738&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,038&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,038&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158,898&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,738&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">186,636&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">134,715&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,038&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">160,753&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Timing of revenue recognition:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Products transferred at a point in time</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158,476&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,671&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">183,147&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">134,069&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,858&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158,927&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Products and services transferred over time</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">422&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,067&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,489&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">646&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,180&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,826&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158,898&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,738&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">186,636&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">134,715&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,038&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">160,753&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Geographical region:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Taiwan</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">44,734&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">846&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">45,580&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30,439&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,341&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">31,780&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">China</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">37,831&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,794&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">42,625&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">37,280&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,362&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43,642&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">21,308&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,178&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">29,486&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">25,611&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,305&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">31,916&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:5.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Asia-Pacific</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">1</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,878&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,080&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,958&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,455&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,408&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,863&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">South Korea</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,001&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,084&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19,085&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,692&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">396&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">14,088&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Europe</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,833&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,166&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,999&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16,210&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,833&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">21,043&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Japan</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,249&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,072&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,321&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,535&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,835&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,370&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Rest of the world</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,064&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">518&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,582&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,493&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">558&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,051&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158,898&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,738&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">186,636&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">134,715&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,038&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">160,753&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:98.976%"><tr><td style="width:1.0%"/><td style="width:41.883%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.910%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.390%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.910%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.390%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.910%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.390%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.910%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.390%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.910%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.390%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.917%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:120%;position:relative;top:-3.15pt;vertical-align:baseline">1</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"> Asia-Pacific includes all countries in the region except China, Japan, South Korea, and Taiwan, which are disclosed separately.</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_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://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 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-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 34<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8981-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 21<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8721-108599<br><br>Reference 4: 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 40<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9031-108599<br><br>Reference 5: 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 (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 6: 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 (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 7: 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 26<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8844-108599<br><br>Reference 8: 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 41<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9038-108599<br><br>Reference 9: 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 (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 10: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 11: 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 42<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9054-108599<br><br>Reference 12: 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 15<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8657-108599<br><br>Reference 13: 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 21<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8721-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<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>33
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692473479736">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation and New Accounting Pronouncements (Policies)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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_BasisOfAccountingPolicyPolicyTextBlock', window );">Basis of Presentation</a></td>
<td class="text">Basis of PresentationThe accompanying condensed consolidated financial information of FormFactor,&#160;Inc. is unaudited and has been prepared in accordance with accounting principles generally accepted in the United States of America (&#8220;GAAP&#8221;) and pursuant to the rules and regulations of the Securities and Exchange Commission (&#8220;SEC&#8221;). However, such information reflects all adjustments, consisting only of normal recurring adjustments, which are, in the opinion of management, necessary for a fair presentation of the financial position, results of operations and cash flows for the interim periods. The condensed consolidated financial statements included herein should be read in conjunction with the consolidated financial statements and the notes thereto included in our 2020 Annual Report on Form 10-K filed with the SEC on February 22, 2021. The results of operations for the interim periods presented are not necessarily indicative of the results to be expected for the full year.<span></span>
</td>
</tr>
<tr class="re">
<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</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Fiscal Year</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We operate on a 52/53 week fiscal year, whereby the fiscal year ends on the last Saturday of December. Fiscal 2021 and 2020 each contain 52 weeks and the three months ended March&#160;27, 2021 and March&#160;28, 2020 each contained 13 weeks. Fiscal 2021 will end on December&#160;25, 2021.</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_PriorPeriodReclassificationAdjustmentDescription', window );">Reclassifications</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Reclassifications</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certain immaterial reclassifications were made to the prior year financial statements to conform to the current year presentation.</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_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">New Accounting Pronouncements</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">New Accounting Pronouncements</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">ASU 2019-12</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In December 2019, the Financial Accounting Standard Board (&#8220;FASB&#8221;) issued Accounting Standards Update (&#8220;ASU&#8221;) 2019-12, &#8220;Income Taxes (Topic 740),&#8221; which simplifies the accounting for income taxes by removing certain exceptions to the general principles in Topic 740. The amendments also improve consistent application of and simplify GAAP for other areas of Topic 740 by clarifying and amending existing guidance. This guidance is effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2020. We adopted ASU 2019-12 on a prospective basis on December 27, 2020, the first day of fiscal 2021. The adoption did not have a material effect on our consolidated financial position, results of operations or cash flows. </span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">ASU 2020-04</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In March 2020, the FASB issued ASU 2020-04, &#8220;Referenced Rate Reform (Topic 848) - Facilitation of the Effects of Reference Rate Reform on Financial Reporting.&#8221; The ASU provides temporary optional expedients and exceptions for applying generally accepted accounting principles to contract modifications and hedging relationships, subject to meeting certain criteria, that reference the London Interbank Offered Rate (&#8220;LIBOR&#8221;) or another reference rate expected to be discontinued. In January 2021, the FASB issued ASU 2021-01, &#8220;Reference Rate Reform (Topic 848),&#8221; which permits entities to apply optional expedients in Topic 848 to derivative instruments modified because of discounting transition resulting from reference rate reform. ASU 2020-04 became effective upon issuance and may be applied prospectively to contract modifications made on or before December 31, 2022. ASU 2021-01 became effective upon issuance and may be applied on a full retrospective basis as of any date from the beginning of an interim period that includes or is subsequent to March 12, 2020 or prospectively for contract modifications made on or before December 31, 2022. The Company has not yet applied the relief afforded by these standard amendments and is currently assessing contracts that will require modification due to reference rate reform to which these standard amendments may be applied.</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_FairValueMeasurementPolicyPolicyTextBlock', window );">Fair Value</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Whenever possible, the fair values of our financial assets and liabilities are determined using quoted market prices of identical securities or quoted market prices of similar securities from active markets. The three levels of inputs that may be used to measure fair value are as follows:</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 1 valuations are obtained from real-time quotes for transactions in active exchange markets involving identical securities;</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 2 valuations utilize significant observable inputs, such as quoted prices for similar assets or liabilities, quoted prices near the reporting date in markets that are less active, or other inputs that are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities; and</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 3 valuations utilize unobservable inputs to the valuation methodology and include our own data about assumptions market participants would use in pricing the asset or liability based on the best information available under the circumstances.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We did not have any transfers of assets or liabilities measured at fair value on a recurring basis to or from Level 1, Level 2 or Level 3 during the three months ended March&#160;27, 2021 or the year ended December&#160;26, 2020.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The carrying values of Cash, Accounts receivable, net, Restricted cash, Prepaid expenses and other current assets, Accounts payable, Accrued liabilities, and term loans, net of unamortized issuance costs, approximate fair value due to their short maturities. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">No changes were made to our valuation techniques during the first three months of fiscal 2021.</span></div>Assets and Liabilities Measured at Fair Value on a Non-Recurring BasisWe measure and report our non-financial assets such as Property, plant and equipment, Goodwill and Intangible assets at fair value on a non-recurring basis if we determine these assets to be impaired or in the period when we make a business acquisition.<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_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_FairValueMeasurementPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 fair value measurements of financial and non-financial assets, liabilities and instruments classified in shareholders' equity. Disclosures include, but are not limited to, how an entity that manages a group of financial assets and liabilities on the basis of its net exposure measures the fair value of those assets and 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_FairValueMeasurementPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PriorPeriodReclassificationAdjustmentDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 reclassification affecting comparability of financial statement. Excludes amendment to accounting standards, other change in accounting principle, and correction of error.</p></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 205<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6359566&amp;loc=d3e326-107755<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PriorPeriodReclassificationAdjustmentDescription</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<FILENAME>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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692470662008">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Concentration of Credit and Other Risks (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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_RisksAndUncertaintiesAbstract', window );"><strong>Risks and Uncertainties [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_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock', window );">Schedule of Customer Percentage of Revenue</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Each of the following customers accounted for 10% or more of our revenues for the periods indicated: </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Intel Corporation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">36.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Taiwan Semiconductor Manufacturing Co., LTD.</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">*</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">39.6&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">36.2&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:4pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">*Represents less than 10% of total revenues.</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_RisksAndUncertaintiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RisksAndUncertaintiesAbstract</td>
</tr>
<tr>
<td style="padding-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_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: 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> -URI http://asc.fasb.org/extlink&amp;oid=121572278&amp;loc=d3e13537-108611<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=121572278&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 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><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 16<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6327-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 18<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6351-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 21<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6442-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_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock</td>
</tr>
<tr>
<td style="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>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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692471286984">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories, net (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Schedule of Inventory Components</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories, net, consisted of the following (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 26,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Raw materials</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">52,320&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">48,122&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Work-in-progress</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">35,466&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30,806&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Finished goods</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16,941&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">20,301&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">104,727&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">99,229&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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=120391452&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=120391452&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=120391452&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>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692475766424">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Acquisition (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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 Recognized Identified Assets Acquired and Liabilities Assumed</a></td>
<td class="text">The estimated fair value of assets acquired, including goodwill and intangibles, and liabilities assumed is as follows (in thousands):<table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:87.642%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.428%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash and cash equivalents</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,680&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,017&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventory</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,047&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant and equipment</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">669&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease, right of use assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,554&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">599&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tangible assets acquired</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,566&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,529)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable and accrued liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,268)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,554)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred tax liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,840)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total tangible assets acquired and liabilities assumed</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">375&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangible assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,520&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,665&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net Assets Acquired</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,560&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:87.642%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.428%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount </span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,365&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventory</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,727&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant and equipment</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,053&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease, right of use assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">519&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tangible assets acquired</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,720&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable and accrued liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(743)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(519)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total net tangible assets acquired and liabilities assumed</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,458&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangible assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,600&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,942&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net assets acquired</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,000&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table><span></span>
</td>
</tr>
<tr class="re">
<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 Finite-Lived Intangible Assets Acquired as Part of Business Combination</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The intangible assets as of the closing date of the acquisition included (in thousands): </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:67.174%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.280%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.347%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Weighted Average Useful Life (in years)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Developed technologies</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,500&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.0</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,600&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.0</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Order backlog</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">200&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.5</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade names</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">220&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.0</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total intangible assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,520&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8.2</span></td></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The intangible assets as of July 30, 2020 included (in thousands): </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:67.174%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.280%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.347%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Weighted Average Useful Life (in years)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Developed technologies</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,800&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.0</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,400&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.0</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">In-process research and development</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">400&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">N/A</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total intangible assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,600&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.7</span></td></tr></table></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_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=121647850&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>37
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692471042920">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Intangible Assets (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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 );">Goodwill by Reportable Segments</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Goodwill by reportable segment was as follows (in thousands):</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:60.157%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.331%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Probe Cards</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Systems</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Goodwill, gross, as of December 28, 2019</span></td><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">172,482&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,714&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">199,196&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Addition - FRT GmbH Acquisition</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">975&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">975&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Addition - Baldwin Park Acquisition</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,590&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,590&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Addition - HPD Acquisition</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,654&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,654&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign currency translation</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,346&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,346&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Goodwill, gross, as of December 26, 2020</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">178,072&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">34,689&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">212,761&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Addition - Baldwin Park Acquisition</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">352&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">352&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Addition - HPD Acquisition</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,011&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,011&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign currency translation</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(906)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(906)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Goodwill, gross, as of March 27, 2021</span></td><td colspan="3" style="display:none"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">178,424&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">35,794&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">214,218&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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 );">Schedule of Intangible Assets</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Intangible assets were as follows (in thousands): </span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:27.847%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.018%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27, 2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 26, 2020</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Intangible Assets </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Developed technologies </span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">173,318&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">142,344&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30,974&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">176,265&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">137,754&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">38,511&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Trade names</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,100&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,418&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">682&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,162&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,363&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">799&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">51,557&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">34,899&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16,658&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">52,488&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">33,378&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19,110&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Backlog</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,969&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,897&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">72&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,227&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,900&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">327&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">In-process research and development</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">400&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">400&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">400&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">400&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">235,344&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">186,558&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">48,786&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">239,542&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">180,395&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">59,147&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock', window );">Schedule of Amortization Expense</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortization expense was included in our Condensed Consolidated Statements of Income as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,090&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,750&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Selling, general and administrative</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,715&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,513&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,805&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,263&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock', window );">Schedule of Estimated Amortization of Intangible Assets</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The estimated future amortization of definite-lived intangible assets, excluding in-process research and development, is as follows (in thousands): </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:86.473%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.327%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fiscal Year</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Remainder of 2021</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,933&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2022</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,591&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2023</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,240&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,625&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,364&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,633&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">48,386&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 amortization expense of assets, excluding financial assets, that lack physical substance, having a limited useful life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock</td>
</tr>
<tr>
<td style="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_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=121556970&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=121556970&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>38
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692470786216">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accrued Liabilities (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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_PayablesAndAccrualsAbstract', window );"><strong>Payables and Accruals [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 );">Schedule of Accrued Liabilities</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued liabilities consisted of the following (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 26,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued compensation and benefits</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,092&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">33,110&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued income and other taxes</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,008&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,976&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued warranty</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,719&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,918&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Employee stock purchase plan contributions withheld</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,109&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,240&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued contingent consideration </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,884&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,012&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other accrued expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,656&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,086&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43,468&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">55,342&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-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>39
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692472615384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value and Derivative Instruments (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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 );">Fair Value Assets Measured on Recurring Basis</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Assets and liabilities measured at fair value on a recurring basis were as follows (in thousands):&#160;</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.561%"><tr><td style="width:1.0%"/><td style="width:46.036%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.385%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27, 2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Level 1</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Level 2</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Level 3</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Assets:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash equivalents:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Money market funds</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">34,254&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">34,254&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Commercial paper</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,500&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,500&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt 0 25.75pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">39,754&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">39,754&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Marketable securities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;U.S. treasuries</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,669&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,669&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Certificates of deposit</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,212&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,212&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;U.S. agency securities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">575&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">575&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Corporate bonds</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">44,146&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">44,146&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;Commercial paper</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15,491&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15,491&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt 0 7.75pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32,669&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">61,424&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">94,093&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign exchange derivative contracts (Designated)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">144&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">144&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest rate swap derivative contracts</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">745&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">745&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">72,423&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">62,313&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">134,736&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign exchange derivative contracts (Designated)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(100)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(100)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest rate swap derivative contracts</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(113)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(113)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Contingent consideration</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,884)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,884)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(213)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,884)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4,097)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.561%"><tr><td style="width:1.0%"/><td style="width:46.036%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.381%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.385%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 26, 2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Level 1</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Level 2</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Level 3</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Assets:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash equivalents:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Money market funds</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43,019&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43,019&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Marketable securities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. treasuries</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">40,726&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">40,726&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Certificates of deposit</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,179&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,179&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">U.S. agency securities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">575&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">575&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Corporate bonds</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,330&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,330&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">40,726&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,084&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">67,810&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign exchange derivative contracts</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,057&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,057&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest rate swap derivative contracts</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">57&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">57&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">83,745&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,198&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">111,943&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Liabilities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest rate swap derivative contracts</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(87)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(87)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Contingent consideration</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4,012)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4,012)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(87)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4,012)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4,099)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock', window );">Schedule of the Impact of Cash Flow Hedges on Consolidated Financial Statements</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The impact of the interest rate swaps on our Condensed Consolidated Statements of Income was as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:36.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.605%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount of Gain or (Loss) Recognized in OCI on Derivative (Effective Portion)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Location of Gain or (Loss) Reclassified from Accumulated OCI into Income (Effective Portion)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount of Gain or (Loss) Reclassified from Accumulated OCI into Income (Effective Portion)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Location of Gain or (Loss) Recognized in Income on Derivative (Ineffective Portion)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amount of Gain or (Loss) Recognized in Income on Derivative (Ineffective Portion)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 27, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">624&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(38)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 28, 2020</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(96)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></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_ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock', window );">Schedule of Foreign Currency Forward Contracts</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides information about our foreign currency forward contracts outstanding as of March&#160;27, 2021 (in thousands):</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.853%"><tr><td style="width:1.0%"/><td style="width:55.854%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.345%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.248%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.251%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Currency</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Contract Position</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Contract Amount<br/>(Local Currency)<br/></span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Contract Amount<br/>(U.S. Dollars)<br/></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Euro Dollar</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Buy</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(10,141)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(12,025)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Euro Dollar</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sell</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,043&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,026&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Japanese Yen</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Buy</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,971,765)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(17,977)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Korean Won</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sell</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,129,743&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,767&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Taiwan Dollar</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sell</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,972&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">279&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total USD notional amount of outstanding foreign exchange contracts</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(13,930)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The impact of foreign exchange derivative contracts designated as cash flow hedges on our Condensed Consolidated Statements of Income was as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:42.467%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:28.285%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.332%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount of Gain (Loss) Recognized in Accumulated OCI on Derivative </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Location of Gain (Loss) Reclassified from Accumulated OCI into Income </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount of Gain (Loss) Reclassified from Accumulated OCI into Income </span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 27, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(526)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenues</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">250&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Selling, general and administrative</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">82&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">362&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 28, 2020</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenues</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(120)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(18)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Selling, general and administrative</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(43)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(181)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:12pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></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_ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock', window );">Schedule of Gains and Losses Related to Non-designated Derivative Instruments</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The impact of foreign exchange derivative contracts not designated as cash flow hedges on our Condensed Consolidated Statements of Income was as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:37.350%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:33.549%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.180%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.331%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount of Gain (Loss) Recognized on Derivatives</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Derivatives Not Designated as Hedging Instruments</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Location of Gain (Loss) Recognized on Derivatives</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foreign exchange forward contracts</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other income (expense), net</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,288&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(115)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></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_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 gain (loss) on derivative and nonderivative instruments designated and qualifying as cash flow hedge recorded in accumulated other comprehensive income (AOCI) and reclassified into earnings.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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 4C<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121590274&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_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of assets and liabilities, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 presentation of foreign exchange contracts on the statement of financial position, including the fair value amounts and location of such 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> -SubTopic 10<br> -Section 50<br> -Paragraph 4B<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=121590274&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_ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of derivative instrument not designated or qualifying as hedging instrument.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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 4C<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121590274&amp;loc=SL5624171-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 4CC<br> -URI http://asc.fasb.org/extlink&amp;oid=121590274&amp;loc=SL109998890-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_ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<FILENAME>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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692469193144">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Warranty (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductWarrantiesDisclosuresAbstract', window );"><strong>Product Warranties Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock', window );">Reconciliation of Changes in Warranty Liability</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in our warranty liability were as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Balance at beginning of period</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,918&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,942&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accruals</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,374&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">660&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Settlements</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,573)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(684)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Balance at end of period</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,719&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,918&#160;</span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantiesDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantiesDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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>41
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692470844664">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property, Plant, and Equipment, net (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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, Plant and Equipment</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property, plant and equipment, net consisted of the following (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.461%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 26,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Land</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,751&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,751&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Machinery and equipment </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">233,357&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">226,185&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Computer equipment and software</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43,839&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">36,361&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Furniture and fixtures </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,925&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,894&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Leasehold improvements </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">80,011&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">79,144&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Sub-total </span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">368,883&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">353,335&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: Accumulated depreciation and amortization </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(298,865)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(294,468)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net, property, plant and equipment </span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">70,018&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">58,867&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Construction-in-process</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">42,294&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">45,236&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">112,312&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">104,103&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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=120391452&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>42
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692473446920">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders&#8217; Equity and Stock-Based Compensation (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock', window );">Schedule of Restricted Stock Unit Activity</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Restricted stock unit (&#8220;RSU&#8221;) activity under our equity incentive plan was as follows:</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Units</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted Average Grant Date Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">RSUs at December 26, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,840,922&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19.80&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Awards granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,765&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">46.25&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Awards vested</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(67,635)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16.38&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Awards forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(11,140)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">21.21&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">RSUs at March 27, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,770,912&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19.96&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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 );">Schedule of Stock Option Activity</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Stock option activity under our equity incentive plan was as follows:</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:46.498%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.527%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.272%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.527%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.272%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.527%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.272%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.527%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.278%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Options Outstanding</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted Average Exercise Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted Average Remaining Contractual Life in Years</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Aggregate Intrinsic Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Outstanding at December 26, 2020</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">106,000&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.35&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Options exercised</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(50,000)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.44&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Outstanding at March 27, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">56,000&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.28&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.92</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,078,820&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Vested and expected to vest at March 27, 2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">56,000&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.28&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.92</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,078,820&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Exercisable at March 27, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">56,000&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.28&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.92</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,078,820&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock', window );">Schedule of ESPP Activity</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information related to activity under our Employee Stock Purchase Plan (&#8220;ESPP&#8221;) was as follows: </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.853%"><tr><td style="width:1.0%"/><td style="width:85.869%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.346%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27, 2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Shares issued</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">228,784&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted average per share purchase price</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22.14&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted average per share discount from the fair value of our common stock on the date of issuance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(18.73)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock', window );">Schedule of Stock-based Compensation</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Stock-based compensation was included in our Condensed Consolidated Statements of Income as follows (in thousands): </span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,335&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">937&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Research and development</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,689&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,439&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Selling, general and administrative</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,053&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,247&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total stock-based compensation</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,077&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,623&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></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_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock', window );">Schedule of Unrecognized Stock-based Compensation</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At March&#160;27, 2021, the unrecognized stock-based compensation was as follows (dollars in thousands):&#160;</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unrecognized Expense</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Average Expected Recognition Period in Years</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Restricted stock units</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,429&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2.03</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Performance restricted stock units</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,719&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1.93</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Employee stock purchase plan</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">973&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.86</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total unrecognized stock-based compensation expense</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">36,121&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1.99</span></td></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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=120381028&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 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 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&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_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 employee stock purchase plan 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 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&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_ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock</td>
</tr>
<tr>
<td style="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_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=120381028&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=120381028&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=120381028&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=120381028&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_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 cost not yet recognized and weighted-average period over which cost is expected to be recognized for nonvested 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 (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&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_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<FILENAME>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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692400121880">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Net Income per Share (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Schedule of Calculation of Numerator and Denominator in Earnings Per Share</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table reconciles the shares used in calculating basic net income per share and diluted net income per share (in thousands):</span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:75.654%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.157%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.159%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted-average shares used in computing basic net income per share</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">77,598&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">76,005&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Add potentially dilutive securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,390&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,505&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted-average shares used in computing diluted net income per share</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">79,988&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">78,510&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Securities not included as they would have been antidilutive</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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://www.xbrl.org/2009/role/commonPracticeRef<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_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>44
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692470626632">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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_LeaseCostTableTextBlock', window );">Components of Lease Expense</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The components of lease expense were as follows (in thousands): </span></div><div style="margin-bottom:6pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.315%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.326%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.329%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27,<br/>2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28,<br/>2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Lease expense:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating lease expense</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,123&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,924&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Short-term lease expense</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">37&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">40&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Variable lease expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">537&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">383&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,697&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,347&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></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_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Schedule of Future Minimum Payments Under Leases</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Future minimum payments under our non-cancelable operating leases were as follows as of March&#160;27, 2021 (in thousands):</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:85.742%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.328%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fiscal Year</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Remainder of 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,747&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2022</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,040&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,710&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,297&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,814&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">14,416&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;Total minimum lease payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">50,024&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: interest</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(8,982)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;Present value of net minimum lease payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41,042&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less: current portion</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(7,557)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;Total long-term operating lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">33,485&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_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=121609121&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_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_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=121609121&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>45
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692471254536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Operating Segments and Enterprise-Wide Information (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 27, 2021</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_ScheduleOfSegmentReportingInformationBySegmentTextBlock', window );">Schedule of Operating Results by Segment</a></td>
<td class="text">The following table summarizes the operating results by reportable segment (dollars in thousands):<table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.853%"><tr><td style="width:1.0%"/><td style="width:11.784%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.295%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.002%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.002%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.295%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.295%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.002%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.002%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.299%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="45" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="21" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27, 2021</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="21" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28, 2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Probe Cards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Systems</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate and Other</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Probe Cards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Systems</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate and Other</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158,898&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,738&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">186,636&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">134,715&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,038&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">160,753&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit </span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">70,315&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,599&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(7,208)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">76,706&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">60,743&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,334&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(6,687)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">67,390&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross margin</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">44.3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">49.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">45.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">51.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr></table><span></span>
</td>
</tr>
<tr class="re">
<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 by Segment</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Certain revenue category information by reportable segment was as follows (in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:41.443%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.818%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.818%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.818%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.818%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.818%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.117%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="33" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 27, 2021</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 28, 2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Probe Cards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Systems</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Probe Cards</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Systems</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Market:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Foundry &amp; Logic</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">113,410&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">113,410&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">105,745&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">105,745&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">DRAM</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">33,898&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">33,898&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,696&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,696&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Flash</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,590&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,590&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,274&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,274&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Systems</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,738&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,738&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,038&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,038&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158,898&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,738&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">186,636&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">134,715&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,038&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">160,753&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Timing of revenue recognition:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Products transferred at a point in time</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158,476&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,671&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">183,147&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">134,069&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,858&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158,927&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Products and services transferred over time</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">422&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,067&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,489&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">646&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,180&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,826&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158,898&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,738&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">186,636&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">134,715&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,038&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">160,753&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Geographical region:</span></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Taiwan</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">44,734&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">846&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">45,580&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">30,439&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,341&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">31,780&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">China</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">37,831&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,794&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">42,625&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">37,280&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,362&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">43,642&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">21,308&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,178&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">29,486&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">25,611&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,305&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">31,916&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:5.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Asia-Pacific</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">1</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,878&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,080&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,958&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,455&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,408&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,863&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">South Korea</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,001&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,084&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19,085&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,692&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">396&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">14,088&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Europe</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,833&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,166&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,999&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16,210&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,833&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">21,043&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Japan</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,249&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,072&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,321&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,535&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,835&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,370&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Rest of the world</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,064&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">518&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,582&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,493&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">558&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,051&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">158,898&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27,738&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">186,636&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">134,715&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">26,038&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">160,753&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:98.976%"><tr><td style="width:1.0%"/><td style="width:41.883%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.910%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.390%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.910%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.390%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.910%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.390%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.910%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.390%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.910%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.390%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.917%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:120%;position:relative;top:-3.15pt;vertical-align:baseline">1</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"> Asia-Pacific includes all countries in the region except China, Japan, South Korea, and Taiwan, which are disclosed separately.</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_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=121604090&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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or 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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8813-108599<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 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock</td>
</tr>
<tr>
<td style="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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>46
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692488606776">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Concentration of Credit and Other Risks (Details) - Customer Concentration Risk<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Mar. 28, 2020</div></th>
<th class="th"><div>Dec. 26, 2020</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_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Revenue from Contract with Customer Benchmark</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_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [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_ConcentrationRiskPercentage1', window );">Concentration risk percentage</a></td>
<td class="nump">39.60%<span></span>
</td>
<td class="nump">36.20%<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 );">Revenue from Contract with Customer Benchmark | Intel Corporation</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_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [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_ConcentrationRiskPercentage1', window );">Concentration risk percentage</a></td>
<td class="nump">28.10%<span></span>
</td>
<td class="nump">36.20%<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 );">Revenue from Contract with Customer Benchmark | Taiwan Semiconductor Manufacturing Co., LTD.</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_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [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_ConcentrationRiskPercentage1', window );">Concentration risk percentage</a></td>
<td class="nump">11.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Accounts Receivable | Major Customer 1</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_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [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_ConcentrationRiskPercentage1', window );">Concentration risk percentage</a></td>
<td class="nump">22.80%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15.30%<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 );">Accounts Receivable | Major Customer 2</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_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [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_ConcentrationRiskPercentage1', window );">Concentration risk percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">13.70%<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_ConcentrationRiskLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_ConcentrationRiskLineItems</td>
</tr>
<tr>
<td style="padding-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_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://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 42<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9054-108599<br><br>Reference 2: 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 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 20<br> -URI http://asc.fasb.org/extlink&amp;oid=121572278&amp;loc=d3e13531-108611<br><br>Reference 4: 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=121572278&amp;loc=d3e13537-108611<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 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_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_RevenueFromContractWithCustomerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RevenueFromContractWithCustomerMember</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=form_IntelMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=form_IntelMember</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=form_TaiwanSemiconductorManufacturingCoLTDMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=form_TaiwanSemiconductorManufacturingCoLTDMember</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=form_MajorCustomer1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=form_MajorCustomer1Member</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=form_MajorCustomer2Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=form_MajorCustomer2Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<FILENAME>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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692469029368">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Inventories, net (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Dec. 26, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryRawMaterialsNetOfReserves', window );">Raw materials</a></td>
<td class="nump">$ 52,320<span></span>
</td>
<td class="nump">$ 48,122<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryWorkInProcessNetOfReserves', window );">Work-in-progress</a></td>
<td class="nump">35,466<span></span>
</td>
<td class="nump">30,806<span></span>
</td>
</tr>
<tr class="ro">
<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">16,941<span></span>
</td>
<td class="nump">20,301<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories</a></td>
<td class="nump">$ 104,727<span></span>
</td>
<td class="nump">$ 99,229<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryFinishedGoodsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=120391452&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=121566466&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 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=120391452&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_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=120391452&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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryWorkInProcessNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&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_InventoryWorkInProcessNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692473997096">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Acquisition - Additional Information (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Oct. 19, 2020 </div>
<div>USD ($) </div>
<div>millikelvin</div>
</th>
<th class="th">
<div>Jul. 30, 2020 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=form_BaldwinParkMember', window );">Baldwin Park</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_BusinessCombinationConsiderationTransferred1', window );">Consideration transferred</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 35,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_BusinessAcquisitionAxis=form_HighPrecisionDevicesIncMember', window );">High Precision Devices, Inc.</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_BusinessAcquisitionPercentageOfVotingInterestsAcquired', window );">Business acquisition, percentage acquired</a></td>
<td class="nump">100.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_BusinessCombinationConsiderationTransferred1', window );">Consideration transferred</a></td>
<td class="nump">$ 16,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 and cash equivalents</a></td>
<td class="nump">$ 1,680<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=form_HighPrecisionDevicesIncMember', window );">High Precision Devices, Inc. | Minimum</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_form_SensorMarketsOperatingTemperature', window );">Sensor markets, operating temperature | millikelvin</a></td>
<td class="nump">30<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_form_SensorMarketsOperatingTemperature">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sensor Markets, Operating Temperature</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">form_SensorMarketsOperatingTemperature</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>form_</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_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_BusinessAcquisitionPercentageOfVotingInterestsAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 voting equity interests acquired at the acquisition date in the 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 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<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_BusinessAcquisitionPercentageOfVotingInterestsAcquired</td>
</tr>
<tr>
<td style="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_BusinessCombinationConsiderationTransferred1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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 8<br> -URI http://asc.fasb.org/extlink&amp;oid=116859721&amp;loc=d3e6613-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 (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120321790&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 30<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=116859721&amp;loc=d3e6578-128477<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationConsiderationTransferred1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=121647850&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_BusinessAcquisitionAxis=form_BaldwinParkMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=form_BaldwinParkMember</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=form_HighPrecisionDevicesIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=form_HighPrecisionDevicesIncMember</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692473949080">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Acquisition - Assets Acquired and Liabilities Assumed (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Dec. 26, 2020</div></th>
<th class="th"><div>Oct. 19, 2020</div></th>
<th class="th"><div>Jul. 30, 2020</div></th>
<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_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_Goodwill', window );">Goodwill</a></td>
<td class="nump">$ 214,218<span></span>
</td>
<td class="nump">$ 212,761<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 199,196<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=form_BaldwinParkMember', window );">Baldwin Park</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_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="re">
<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</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">$ 4,365<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,727<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property, plant 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>
<td class="nump">9,053<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_form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets', window );">Operating lease, right of use assets</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">519<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets', window );">Prepaid expenses and other current assets</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">56<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets', window );">Tangible assets acquired</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,720<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 and accrued liabilities</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="num">(743)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation', window );">Operating lease liabilities</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="num">(519)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet', window );">Total tangible assets acquired and liabilities assumed</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">15,458<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangible assets</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">13,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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="text">&#160;<span></span>
</td>
<td class="nump">5,942<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Net Assets Acquired</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">$ 35,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=form_HighPrecisionDevicesIncMember', window );">High Precision Devices, Inc.</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_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="re">
<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 and cash equivalents</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,680<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</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,017<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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,047<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Property, plant and equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">669<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_form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets', window );">Operating lease, right of use assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,554<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets', window );">Prepaid expenses and other current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">599<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets', window );">Tangible assets acquired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,566<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue', window );">Deferred revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,529)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable', window );">Accounts payable and accrued liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,268)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation', window );">Operating lease liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,554)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities', window );">Deferred tax liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,840)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet', window );">Total tangible assets acquired and liabilities assumed</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">375<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill', window );">Intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11,520<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">6,665<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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 18,560<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_form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, Operating Lease, Right-Of-Use Assets</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>form_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 assets 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=121647850&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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 lease obligation assumed in 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 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121647850&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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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=121647850&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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer, 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=121647850&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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=121647850&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=121647850&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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred revenue expected to be recognized as such within 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=121647850&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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121647850&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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 intangible assets, excluding goodwill, 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=121647850&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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=121647850&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=121600890&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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 as of the acquisition date for the identifiable assets acquired 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 10<br> -Section 55<br> -Paragraph 37<br> -URI http://asc.fasb.org/extlink&amp;oid=121600890&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=121647850&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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 property, plant, and equipment 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=121600890&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=121647850&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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=121647850&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_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<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(10)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&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 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120320667&amp;loc=SL49117168-202975<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 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_BusinessAcquisitionAxis=form_BaldwinParkMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=form_BaldwinParkMember</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=form_HighPrecisionDevicesIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=form_HighPrecisionDevicesIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<FILENAME>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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692472176440">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Acquisition - Intangible Assets Acquired (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Oct. 19, 2020</div></th>
<th class="th"><div>Jul. 30, 2020</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_BusinessAcquisitionAxis=form_HighPrecisionDevicesIncMember', window );">High Precision Devices, Inc.</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Amount</a></td>
<td class="nump">$ 11,520<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Weighted Average Useful Life (in years)</a></td>
<td class="text">8 years 2 months 12 days<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=form_BaldwinParkMember', window );">Baldwin Park</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 13,600<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Weighted Average Useful Life (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">7 years 8 months 12 days<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=form_BaldwinParkMember', window );">Baldwin Park | In-process research and development</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 400<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DevelopedTechnologyRightsMember', window );">Developed technologies | High Precision Devices, Inc.</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Amount</a></td>
<td class="nump">$ 7,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Weighted Average Useful Life (in years)</a></td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DevelopedTechnologyRightsMember', window );">Developed technologies | Baldwin Park</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 8,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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted Average Useful Life (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">10 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_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember', window );">Customer relationships | High Precision Devices, Inc.</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Amount</a></td>
<td class="nump">$ 3,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Weighted Average Useful Life (in years)</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember', window );">Customer relationships | Baldwin Park</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,400<span></span>
</td>
</tr>
<tr class="re">
<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 );">Weighted Average Useful Life (in years)</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OrderOrProductionBacklogMember', window );">Order backlog | High Precision Devices, Inc.</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Amount</a></td>
<td class="nump">$ 200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Weighted Average Useful Life (in years)</a></td>
<td class="text">6 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_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember', window );">Trade names | High Precision Devices, Inc.</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Amount</a></td>
<td class="nump">$ 220<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Weighted Average Useful Life (in years)</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_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_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=121600890&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=121647850&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_BusinessAcquisitionAxis=form_HighPrecisionDevicesIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=form_HighPrecisionDevicesIncMember</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=form_BaldwinParkMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=form_BaldwinParkMember</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_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_InProcessResearchAndDevelopmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_InProcessResearchAndDevelopmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DevelopedTechnologyRightsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DevelopedTechnologyRightsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=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_OrderOrProductionBacklogMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_OrderOrProductionBacklogMember</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692399884024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Intangible Assets - Goodwill (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Dec. 26, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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, beginning balance</a></td>
<td class="nump">$ 212,761<span></span>
</td>
<td class="nump">$ 199,196<span></span>
</td>
</tr>
<tr class="re">
<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 );">Foreign currency translation</a></td>
<td class="num">(906)<span></span>
</td>
<td class="nump">2,346<span></span>
</td>
</tr>
<tr class="ro">
<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, ending balance</a></td>
<td class="nump">214,218<span></span>
</td>
<td class="nump">212,761<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=form_FRTGmbHMember', window );">FRT GmbH</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_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="re">
<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="text">&#160;<span></span>
</td>
<td class="nump">975<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=form_BaldwinParkMember', window );">Baldwin Park</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_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_GoodwillAcquiredDuringPeriod', window );">Goodwill, acquired during period</a></td>
<td class="nump">352<span></span>
</td>
<td class="nump">5,590<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=form_HighPrecisionDevicesIncMember', window );">High Precision Devices, Inc.</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_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="re">
<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,011<span></span>
</td>
<td class="nump">4,654<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_StatementBusinessSegmentsAxis=form_ProbeCardsSegmentMember', window );">Probe Cards</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_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, beginning balance</a></td>
<td class="nump">178,072<span></span>
</td>
<td class="nump">172,482<span></span>
</td>
</tr>
<tr class="re">
<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 );">Foreign currency translation</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_Goodwill', window );">Goodwill, ending balance</a></td>
<td class="nump">178,424<span></span>
</td>
<td class="nump">178,072<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_StatementBusinessSegmentsAxis=form_ProbeCardsSegmentMember', window );">Probe Cards | FRT GmbH</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_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="re">
<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="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_StatementBusinessSegmentsAxis=form_ProbeCardsSegmentMember', window );">Probe Cards | Baldwin Park</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_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_GoodwillAcquiredDuringPeriod', window );">Goodwill, acquired during period</a></td>
<td class="nump">352<span></span>
</td>
<td class="nump">5,590<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_StatementBusinessSegmentsAxis=form_ProbeCardsSegmentMember', window );">Probe Cards | High Precision Devices, Inc.</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_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="re">
<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">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_StatementBusinessSegmentsAxis=form_SystemsSegmentMember', window );">Systems</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_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, beginning balance</a></td>
<td class="nump">34,689<span></span>
</td>
<td class="nump">26,714<span></span>
</td>
</tr>
<tr class="re">
<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 );">Foreign currency translation</a></td>
<td class="num">(906)<span></span>
</td>
<td class="nump">2,346<span></span>
</td>
</tr>
<tr class="ro">
<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, ending balance</a></td>
<td class="nump">35,794<span></span>
</td>
<td class="nump">34,689<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_StatementBusinessSegmentsAxis=form_SystemsSegmentMember', window );">Systems | FRT GmbH</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_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="re">
<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="text">&#160;<span></span>
</td>
<td class="nump">975<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_StatementBusinessSegmentsAxis=form_SystemsSegmentMember', window );">Systems | Baldwin Park</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_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_GoodwillAcquiredDuringPeriod', window );">Goodwill, acquired during period</a></td>
<td class="text"> <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_StatementBusinessSegmentsAxis=form_SystemsSegmentMember', window );">Systems | High Precision Devices, Inc.</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_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="re">
<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,011<span></span>
</td>
<td class="nump">$ 4,654<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://www.xbrl.org/2003/role/disclosureRef<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(10)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&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 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120320667&amp;loc=SL49117168-202975<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 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=121556970&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_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=121556970&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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=form_FRTGmbHMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=form_FRTGmbHMember</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=form_BaldwinParkMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=form_BaldwinParkMember</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=form_HighPrecisionDevicesIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=form_HighPrecisionDevicesIncMember</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_StatementBusinessSegmentsAxis=form_ProbeCardsSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StatementBusinessSegmentsAxis=form_ProbeCardsSegmentMember</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_StatementBusinessSegmentsAxis=form_SystemsSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StatementBusinessSegmentsAxis=form_SystemsSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>52
<FILENAME>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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692470626632">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Intangible Assets - Additional information (Details)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 27, 2021 </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_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_GoodwillImpairmentLoss', window );">Goodwill, impairment loss</a></td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_GoodwillImpairmentLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 loss from the write-down 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 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13854-109267<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=121586364&amp;loc=d3e3602-108585<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 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: 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 2<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13777-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_GoodwillImpairmentLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>53
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692470932392">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Goodwill and Intangible Assets - Intangible Assets (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Dec. 26, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross</a></td>
<td class="nump">$ 235,344<span></span>
</td>
<td class="nump">$ 239,542<span></span>
</td>
</tr>
<tr class="re">
<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">186,558<span></span>
</td>
<td class="nump">180,395<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">48,786<span></span>
</td>
<td class="nump">59,147<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=form_ExistingDevelopedTechnologiesMember', window );">Developed technologies</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross</a></td>
<td class="nump">173,318<span></span>
</td>
<td class="nump">176,265<span></span>
</td>
</tr>
<tr class="ro">
<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">142,344<span></span>
</td>
<td class="nump">137,754<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">30,974<span></span>
</td>
<td class="nump">38,511<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 );">Trade names</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross</a></td>
<td class="nump">8,100<span></span>
</td>
<td class="nump">8,162<span></span>
</td>
</tr>
<tr class="re">
<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">7,418<span></span>
</td>
<td class="nump">7,363<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">682<span></span>
</td>
<td class="nump">799<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_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross</a></td>
<td class="nump">51,557<span></span>
</td>
<td class="nump">52,488<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="nump">34,899<span></span>
</td>
<td class="nump">33,378<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">16,658<span></span>
</td>
<td class="nump">19,110<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OrderOrProductionBacklogMember', window );">Order backlog</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross</a></td>
<td class="nump">1,969<span></span>
</td>
<td class="nump">2,227<span></span>
</td>
</tr>
<tr class="re">
<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">1,897<span></span>
</td>
<td class="nump">1,900<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">72<span></span>
</td>
<td class="nump">327<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_InProcessResearchAndDevelopmentMember', window );">In-process research and development</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross</a></td>
<td class="nump">400<span></span>
</td>
<td class="nump">400<span></span>
</td>
</tr>
<tr class="ro">
<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">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_FiniteLivedIntangibleAssetsNet', window );">Net</a></td>
<td class="nump">$ 400<span></span>
</td>
<td class="nump">$ 400<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_FiniteLivedIntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120154696&amp;loc=d3e54445-107959<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_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=form_ExistingDevelopedTechnologiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=form_ExistingDevelopedTechnologiesMember</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_OrderOrProductionBacklogMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_OrderOrProductionBacklogMember</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_InProcessResearchAndDevelopmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_InProcessResearchAndDevelopmentMember</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>54
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692472151992">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and Intangible Assets - Amortization Expense (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Mar. 28, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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>
</tr>
<tr class="ro">
<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">$ 6,805<span></span>
</td>
<td class="nump">$ 7,263<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract', window );"><strong>Finite-Lived Intangible Assets, Net, Amortization Expense, Rolling Maturity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear', window );">Remainder of 2021</a></td>
<td class="nump">11,933<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">2022</a></td>
<td class="nump">9,591<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 );">2023</a></td>
<td class="nump">7,240<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">2024</a></td>
<td class="nump">4,625<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 );">2025</a></td>
<td class="nump">4,364<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_form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour', window );">Thereafter</a></td>
<td class="nump">10,633<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_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal', window );">Net</a></td>
<td class="nump">48,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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember', window );">Cost of revenues</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_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>
</tr>
<tr class="re">
<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">5,090<span></span>
</td>
<td class="nump">5,750<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_SellingGeneralAndAdministrativeExpensesMember', window );">Selling, general and administrative</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_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>
</tr>
<tr class="ro">
<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">$ 1,715<span></span>
</td>
<td class="nump">$ 1,513<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 Asset, Expected Amortization, after Year Four</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>form_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 Amortization Expense 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;">form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>form_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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=121586364&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_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 for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in remainder of current fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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 for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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 for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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 for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract</td>
</tr>
<tr>
<td style="padding-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_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_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_SellingGeneralAndAdministrativeExpensesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_SellingGeneralAndAdministrativeExpensesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692473995560">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Accrued Liabilities (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Dec. 26, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PayablesAndAccrualsAbstract', window );"><strong>Payables and Accruals [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_EmployeeRelatedLiabilitiesCurrent', window );">Accrued compensation and benefits</a></td>
<td class="nump">$ 28,092<span></span>
</td>
<td class="nump">$ 33,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_TaxesPayableCurrentAndNoncurrent', window );">Accrued income and other taxes</a></td>
<td class="nump">3,008<span></span>
</td>
<td class="nump">6,976<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualClassifiedCurrent', window );">Accrued warranty</a></td>
<td class="nump">3,719<span></span>
</td>
<td class="nump">3,918<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccruedEmployeeBenefitsCurrent', window );">Employee stock purchase plan contributions withheld</a></td>
<td class="nump">2,109<span></span>
</td>
<td class="nump">4,240<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent', window );">Accrued contingent consideration</a></td>
<td class="nump">3,884<span></span>
</td>
<td class="nump">4,012<span></span>
</td>
</tr>
<tr class="re">
<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 );">Other accrued expenses</a></td>
<td class="nump">2,656<span></span>
</td>
<td class="nump">3,086<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 liabilities</a></td>
<td class="nump">$ 43,468<span></span>
</td>
<td class="nump">$ 55,342<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_AccruedEmployeeBenefitsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, excluding pension and other postretirement benefits, incurred through that date and payable for perquisites provided to employees pertaining to services received from them. 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 45<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6935-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 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&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_AccruedEmployeeBenefitsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=120391452&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_BusinessCombinationContingentConsiderationLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of liability recognized arising from contingent consideration in a business combination, expected to be settled 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 805<br> -SubTopic 30<br> -Section 25<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=6911189&amp;loc=d3e6408-128476<br><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 35<br> -Paragraph 1<br> -Subparagraph b<br> -URI http://asc.fasb.org/extlink&amp;oid=116859824&amp;loc=d3e6819-128478<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_EmployeeRelatedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. 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=120391452&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_EmployeeRelatedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=120391452&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=121566466&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=121566466&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=121566466&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_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-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_ProductWarrantyAccrualClassifiedCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers. For classified balance sheets, represents 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 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12524-110249<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.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&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 460<br> -SubTopic 10<br> -Section 25<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=68070138&amp;loc=d3e11281-110244<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrualClassifiedCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_TaxesPayableCurrentAndNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 statutory income, sales, use, payroll, excise, real, property and other taxes.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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=120391452&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(15)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&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(a)(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&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_TaxesPayableCurrentAndNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>56
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692475654728">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Fair Value and Derivative Instruments - Fair Value Assets Measured on Recurring Basis (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Dec. 26, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</a></td>
<td class="nump">$ 39,754<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MarketableSecurities', window );">Marketable securities</a></td>
<td class="nump">94,093<span></span>
</td>
<td class="nump">$ 67,810<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_AssetsFairValueDisclosure', window );">Total assets</a></td>
<td class="nump">134,736<span></span>
</td>
<td class="nump">111,943<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationContingentConsiderationLiability', window );">Contingent consideration</a></td>
<td class="num">(3,884)<span></span>
</td>
<td class="num">(4,012)<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</a></td>
<td class="num">(4,097)<span></span>
</td>
<td class="num">(4,099)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeContractMember', window );">Foreign exchange derivative contracts</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeLiabilities', window );">Derivative liability</a></td>
<td class="num">(100)<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_ForeignExchangeContractMember', window );">Foreign exchange derivative contracts | Designated as hedging instrument</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeAssets', window );">Derivative contracts</a></td>
<td class="nump">144<span></span>
</td>
<td class="nump">1,057<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_InterestRateSwapMember', window );">Interest rate swap derivative contracts | Designated as hedging instrument</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_DerivativeAssets', window );">Derivative contracts</a></td>
<td class="nump">745<span></span>
</td>
<td class="nump">57<span></span>
</td>
</tr>
<tr class="ro">
<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="num">(113)<span></span>
</td>
<td class="num">(87)<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_FairValueByAssetClassAxis=us-gaap_MoneyMarketFundsMember', window );">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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</a></td>
<td class="nump">34,254<span></span>
</td>
<td class="nump">43,019<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_FairValueByAssetClassAxis=us-gaap_CommercialPaperMember', window );">Commercial paper</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</a></td>
<td class="nump">5,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MarketableSecurities', window );">Marketable securities</a></td>
<td class="nump">15,491<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_FairValueByAssetClassAxis=us-gaap_USTreasuryBillSecuritiesMember', window );">U.S. treasuries</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_MarketableSecurities', window );">Marketable securities</a></td>
<td class="nump">32,669<span></span>
</td>
<td class="nump">40,726<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_FairValueByAssetClassAxis=us-gaap_CertificatesOfDepositMember', window );">Certificates of deposit</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_MarketableSecurities', window );">Marketable securities</a></td>
<td class="nump">1,212<span></span>
</td>
<td class="nump">2,179<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_FairValueByAssetClassAxis=us-gaap_USGovernmentAgenciesDebtSecuritiesMember', window );">U.S. agency securities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_MarketableSecurities', window );">Marketable securities</a></td>
<td class="nump">575<span></span>
</td>
<td class="nump">575<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_FairValueByAssetClassAxis=us-gaap_CorporateBondSecuritiesMember', window );">Corporate bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_MarketableSecurities', window );">Marketable securities</a></td>
<td class="nump">44,146<span></span>
</td>
<td class="nump">24,330<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</a></td>
<td class="nump">39,754<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MarketableSecurities', window );">Marketable securities</a></td>
<td class="nump">32,669<span></span>
</td>
<td class="nump">40,726<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_AssetsFairValueDisclosure', window );">Total assets</a></td>
<td class="nump">72,423<span></span>
</td>
<td class="nump">83,745<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationContingentConsiderationLiability', window );">Contingent consideration</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</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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Level 1 | Foreign exchange derivative contracts</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeLiabilities', window );">Derivative liability</a></td>
<td class="nump">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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Level 1 | Foreign exchange derivative contracts | Designated as hedging instrument</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeAssets', window );">Derivative contracts</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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Level 1 | Interest rate swap derivative contracts | Designated as hedging instrument</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_DerivativeAssets', window );">Derivative contracts</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_DerivativeLiabilities', window );">Derivative liability</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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</a></td>
<td class="nump">34,254<span></span>
</td>
<td class="nump">43,019<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Level 1 | Commercial paper</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</a></td>
<td class="nump">5,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MarketableSecurities', window );">Marketable securities</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Level 1 | U.S. treasuries</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_MarketableSecurities', window );">Marketable securities</a></td>
<td class="nump">32,669<span></span>
</td>
<td class="nump">40,726<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Level 1 | Certificates of deposit</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_MarketableSecurities', window );">Marketable securities</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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Level 1 | U.S. agency securities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_MarketableSecurities', window );">Marketable securities</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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Level 1 | Corporate bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_MarketableSecurities', window );">Marketable securities</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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MarketableSecurities', window );">Marketable securities</a></td>
<td class="nump">61,424<span></span>
</td>
<td class="nump">27,084<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_AssetsFairValueDisclosure', window );">Total assets</a></td>
<td class="nump">62,313<span></span>
</td>
<td class="nump">28,198<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationContingentConsiderationLiability', window );">Contingent consideration</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</a></td>
<td class="num">(213)<span></span>
</td>
<td class="num">(87)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Level 2 | Foreign exchange derivative contracts</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeLiabilities', window );">Derivative liability</a></td>
<td class="num">(100)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Level 2 | Foreign exchange derivative contracts | Designated as hedging instrument</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeAssets', window );">Derivative contracts</a></td>
<td class="nump">144<span></span>
</td>
<td class="nump">1,057<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Level 2 | Interest rate swap derivative contracts | Designated as hedging instrument</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_DerivativeAssets', window );">Derivative contracts</a></td>
<td class="nump">745<span></span>
</td>
<td class="nump">57<span></span>
</td>
</tr>
<tr class="ro">
<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="num">(113)<span></span>
</td>
<td class="num">(87)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Level 2 | Commercial paper</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MarketableSecurities', window );">Marketable securities</a></td>
<td class="nump">15,491<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Level 2 | U.S. treasuries</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_MarketableSecurities', window );">Marketable securities</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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Level 2 | Certificates of deposit</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_MarketableSecurities', window );">Marketable securities</a></td>
<td class="nump">1,212<span></span>
</td>
<td class="nump">2,179<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Level 2 | U.S. agency securities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_MarketableSecurities', window );">Marketable securities</a></td>
<td class="nump">575<span></span>
</td>
<td class="nump">575<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Level 2 | Corporate bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_MarketableSecurities', window );">Marketable securities</a></td>
<td class="nump">44,146<span></span>
</td>
<td class="nump">24,330<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Level 3</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MarketableSecurities', window );">Marketable securities</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_AssetsFairValueDisclosure', window );">Total assets</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_BusinessCombinationContingentConsiderationLiability', window );">Contingent consideration</a></td>
<td class="num">(3,884)<span></span>
</td>
<td class="num">(4,012)<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</a></td>
<td class="num">(3,884)<span></span>
</td>
<td class="num">(4,012)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Level 3 | Foreign exchange derivative contracts</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeLiabilities', window );">Derivative liability</a></td>
<td class="nump">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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Level 3 | Foreign exchange derivative contracts | Designated as hedging instrument</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeAssets', window );">Derivative contracts</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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Level 3 | Interest rate swap derivative contracts | Designated as hedging instrument</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_DerivativeAssets', window );">Derivative contracts</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_DerivativeLiabilities', window );">Derivative liability</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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Level 3 | 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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Level 3 | Commercial paper</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_CashAndCashEquivalentsFairValueDisclosure', window );">Cash equivalents</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MarketableSecurities', window );">Marketable securities</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Level 3 | U.S. treasuries</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_MarketableSecurities', window );">Marketable securities</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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Level 3 | Certificates of deposit</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_MarketableSecurities', window );">Marketable securities</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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Level 3 | U.S. agency securities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_MarketableSecurities', window );">Marketable securities</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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Level 3 | Corporate bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_MarketableSecurities', window );">Marketable securities</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_BusinessCombinationContingentConsiderationLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of liability recognized arising from contingent consideration in a business combination.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120321790&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 805<br> -SubTopic 30<br> -Section 35<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116859824&amp;loc=d3e6819-128478<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 6<br> -URI http://asc.fasb.org/extlink&amp;oid=6911189&amp;loc=d3e6408-128476<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationContingentConsiderationLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=121572278&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=121572278&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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems</td>
</tr>
<tr>
<td style="padding-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_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_MarketableSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 marketable security.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MarketableSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeContractMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ForeignExchangeContractMember</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_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_InterestRateSwapMember</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_FairValueByAssetClassAxis=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_FairValueByAssetClassAxis=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_FairValueByAssetClassAxis=us-gaap_CommercialPaperMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_FairValueByAssetClassAxis=us-gaap_CommercialPaperMember</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_FairValueByAssetClassAxis=us-gaap_USTreasuryBillSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_FairValueByAssetClassAxis=us-gaap_USTreasuryBillSecuritiesMember</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_FairValueByAssetClassAxis=us-gaap_CertificatesOfDepositMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_FairValueByAssetClassAxis=us-gaap_CertificatesOfDepositMember</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_FairValueByAssetClassAxis=us-gaap_USGovernmentAgenciesDebtSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_FairValueByAssetClassAxis=us-gaap_USGovernmentAgenciesDebtSecuritiesMember</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_FairValueByAssetClassAxis=us-gaap_CorporateBondSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByAssetClassAxis=us-gaap_CorporateBondSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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>57
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692473623896">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Fair Value and Derivative Instruments - Additional Information (Details)<br> $ in Thousands, &#8364; in Millions</strong></div></th>
<th class="th">
<div>Oct. 09, 2019 </div>
<div>EUR (&#8364;)</div>
</th>
<th class="th">
<div>Mar. 27, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 26, 2020 </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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_BusinessCombinationContingentConsiderationLiability', window );">Contingent consideration | $</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,884<span></span>
</td>
<td class="nump">$ 4,012<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=form_FRTMember', window );">FRT</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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_form_ContingentConsiderationCalculationAmountMultipleOfEBIT', window );">Contingent consideration, calculation amount, multiple of EBIT</a></td>
<td class="nump">150.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_BusinessAcquisitionAxis=form_FRTMember', window );">FRT | 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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [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_BusinessCombinationContingentConsiderationLiability', window );">Contingent consideration | &#8364;</a></td>
<td class="nump">&#8364; 10.3<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_form_ContingentConsiderationCalculationAmountMultipleOfEBIT">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Contingent Consideration, Calculation Amount, Multiple of EBIT</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">form_ContingentConsiderationCalculationAmountMultipleOfEBIT</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>form_</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_BusinessCombinationContingentConsiderationLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of liability recognized arising from contingent consideration in a business combination.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120321790&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 805<br> -SubTopic 30<br> -Section 35<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116859824&amp;loc=d3e6819-128478<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 6<br> -URI http://asc.fasb.org/extlink&amp;oid=6911189&amp;loc=d3e6408-128476<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationContingentConsiderationLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems</td>
</tr>
<tr>
<td style="padding-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_BusinessAcquisitionAxis=form_FRTMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=form_FRTMember</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>58
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692472701672">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value and Derivative Instruments - Impact of Cash Flow Hedges and Derivatives (Details) - Designated as hedging instrument - Interest rate contracts - Cash flow hedging - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Mar. 28, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax', window );">Amount of Gain or (Loss) Recognized in OCI on Derivative (Effective Portion)</a></td>
<td class="nump">$ 624<span></span>
</td>
<td class="num">$ (96)<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 );">Amount of Gain or (Loss) Reclassified from Accumulated OCI into Income (Effective Portion)</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax', window );">Amount of Gain or (Loss) Reclassified from Accumulated OCI into Income (Effective Portion)</a></td>
<td class="num">$ (38)<span></span>
</td>
<td class="nump">$ 22<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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems</td>
</tr>
<tr>
<td style="padding-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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 and reclassification, of gain (loss) from derivative instrument designated and qualifying cash flow hedge included in assessment of hedge effectiveness.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=121577181&amp;loc=SL110061190-113977<br><br>Reference 2: 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 4A<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121590274&amp;loc=SL5618551-113959<br><br>Reference 3: 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 4C<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121590274&amp;loc=SL5624171-113959<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 11<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=d3e637-108580<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 45<br> -Paragraph 10A<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 reclassification of gain (loss) from accumulated other comprehensive income (AOCI) for derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<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=121641772&amp;loc=d3e689-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 11<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=d3e637-108580<br><br>Reference 3: 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 4C<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121590274&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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_InterestRateSwapMember</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_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember</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>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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692474020824">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Fair Value and Derivative Instruments - Foreign Currency Forward Contracts (Details) - Mar. 27, 2021 - Foreign exchange forward contracts<br> &#8364; in Thousands, &#8361; in Thousands, &#165; in Thousands, $ in Thousands, $ in Thousands</strong></div></th>
<th class="th"><div>EUR (&#8364;)</div></th>
<th class="th"><div>USD ($)</div></th>
<th class="th"><div>JPY (&#165;)</div></th>
<th class="th"><div>KRW (&#8361;)</div></th>
<th class="th"><div>TWD ($)</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_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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="text">&#160;<span></span>
</td>
<td class="num">$ (13,930)<span></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_PositionAxis=us-gaap_LongMember', window );">Buy | Euro Dollar</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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="num">&#8364; (10,141)<span></span>
</td>
<td class="num">(12,025)<span></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_PositionAxis=us-gaap_LongMember', window );">Buy | Japanese Yen</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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="text">&#160;<span></span>
</td>
<td class="num">(17,977)<span></span>
</td>
<td class="num">&#165; (1,971,765)<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_PositionAxis=us-gaap_ShortMember', window );">Sell | Euro Dollar</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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="num">&#8364; (11,043)<span></span>
</td>
<td class="num">(13,026)<span></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_PositionAxis=us-gaap_ShortMember', window );">Sell | Korean Won</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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="text">&#160;<span></span>
</td>
<td class="num">(2,767)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">&#8361; (3,129,743)<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_PositionAxis=us-gaap_ShortMember', window );">Sell | Taiwan Dollar</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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="text">&#160;<span></span>
</td>
<td class="num">$ (279)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (7,972)<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_DerivativeLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=121590274&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=121590274&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_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_PositionAxis=us-gaap_LongMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PositionAxis=us-gaap_LongMember</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_CurrencyAxis=currency_EUR">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CurrencyAxis=currency_EUR</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_CurrencyAxis=currency_JPY">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CurrencyAxis=currency_JPY</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PositionAxis=us-gaap_ShortMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PositionAxis=us-gaap_ShortMember</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_CurrencyAxis=currency_KRW">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CurrencyAxis=currency_KRW</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_CurrencyAxis=currency_TWD">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CurrencyAxis=currency_TWD</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>60
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692472866952">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value and Derivative Instruments - Gains and Losses Related to Non-designated Derivative Instruments (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Mar. 28, 2020</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 | Foreign exchange forward contracts | Location of Gain (Loss) Recognized on Derivatives</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_DerivativeGainLossOnDerivativeNet', window );">Derivatives Not Designated as Hedging Instruments</a></td>
<td class="nump">$ 1,288<span></span>
</td>
<td class="num">$ (115)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeGainLossOnDerivativeNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in the fair value of derivatives recognized in the income statement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=121590274&amp;loc=SL5618551-113959<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeGainLossOnDerivativeNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>61
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692476481944">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value and Derivative Instruments - Impact of Foreign Exchange Derivattive Contracts Designated as Cash Flow Hedges (Details) - Foreign exchange forward contracts - Designated as hedging instrument - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Mar. 28, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax', window );">Amount of Gain (Loss) Recognized in Accumulated OCI on Derivative</a></td>
<td class="num">$ (526)<span></span>
</td>
<td class="num">$ (3)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax', window );">Amount of Gain (Loss) Reclassified from Accumulated OCI into Income</a></td>
<td class="nump">362<span></span>
</td>
<td class="num">(181)<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 );">Cost of revenues</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_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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax', window );">Amount of Gain (Loss) Reclassified from Accumulated OCI into Income</a></td>
<td class="nump">250<span></span>
</td>
<td class="num">(120)<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 );">Research and development</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_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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax', window );">Amount of Gain (Loss) Reclassified from Accumulated OCI into Income</a></td>
<td class="nump">30<span></span>
</td>
<td class="num">(18)<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 );">Selling, general and administrative</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_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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax', window );">Amount of Gain (Loss) Reclassified from Accumulated OCI into Income</a></td>
<td class="nump">$ 82<span></span>
</td>
<td class="num">$ (43)<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_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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 and reclassification, of gain (loss) from derivative instrument designated and qualifying cash flow hedge included in assessment of hedge effectiveness.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=121577181&amp;loc=SL110061190-113977<br><br>Reference 2: 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 4A<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121590274&amp;loc=SL5618551-113959<br><br>Reference 3: 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 4C<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121590274&amp;loc=SL5624171-113959<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 11<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=d3e637-108580<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 45<br> -Paragraph 10A<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 reclassification of gain (loss) from accumulated other comprehensive income (AOCI) for derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<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=121641772&amp;loc=d3e689-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 11<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=d3e637-108580<br><br>Reference 3: 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 4C<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121590274&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_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_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_SellingGeneralAndAdministrativeExpensesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_SellingGeneralAndAdministrativeExpensesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>62
<FILENAME>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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692473180184">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Fair Value and Derivative Instruments - Assets Measured at Fair Value on a Non-Recurring Basis (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Dec. 26, 2020</div></th>
<th class="th"><div>Mar. 28, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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_AssetsFairValueDisclosure', window );">Assets measured at fair value on non-recurring basis</a></td>
<td class="nump">$ 134,736,000<span></span>
</td>
<td class="nump">$ 111,943,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_LiabilitiesFairValueDisclosure', window );">Liabilities measured at fair value on non-recurring basis</a></td>
<td class="nump">4,097,000<span></span>
</td>
<td class="nump">$ 4,099,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_FairValueMeasurementsNonrecurringMember', window );">Nonrecurring</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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_AssetsFairValueDisclosure', window );">Assets measured at fair value on non-recurring basis</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<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_LiabilitiesFairValueDisclosure', window );">Liabilities measured at fair value on non-recurring basis</a></td>
<td class="nump">$ 0<span></span>
</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems</td>
</tr>
<tr>
<td style="padding-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_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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsNonrecurringMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_FairValueMeasurementsNonrecurringMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>63
<FILENAME>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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692473519688">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Warranty (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Mar. 28, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward', window );"><strong>Movement in Standard and Extended Product Warranty, Increase (Decrease) [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_ProductWarrantyAccrual', window );">Balance at beginning of period</a></td>
<td class="nump">$ 3,918<span></span>
</td>
<td class="nump">$ 1,942<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualWarrantiesIssued', window );">Accruals</a></td>
<td class="nump">1,374<span></span>
</td>
<td class="nump">660<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualPayments', window );">Settlements</a></td>
<td class="num">(1,573)<span></span>
</td>
<td class="num">(684)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrual', window );">Balance at end of period</a></td>
<td class="nump">$ 3,719<span></span>
</td>
<td class="nump">$ 1,918<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_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyAccrual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&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 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br><br>Reference 3: 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)(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_ProductWarrantyAccrual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyAccrualPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in the standard and extended product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard and extended product warranty.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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_ProductWarrantyAccrualPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyAccrualWarrantiesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in the standard and extended product warranty accrual from warranties issued.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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_ProductWarrantyAccrualWarrantiesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>64
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692473984632">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Property, Plant, and Equipment, net (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Dec. 26, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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>
</tr>
<tr class="ro">
<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 );">Sub-total</a></td>
<td class="nump">$ 368,883<span></span>
</td>
<td class="nump">$ 353,335<span></span>
</td>
</tr>
<tr class="re">
<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 and amortization</a></td>
<td class="num">(298,865)<span></span>
</td>
<td class="num">(294,468)<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_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress', window );">Net, property, plant and equipment</a></td>
<td class="nump">70,018<span></span>
</td>
<td class="nump">58,867<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConstructionInProgressGross', window );">Construction-in-process</a></td>
<td class="nump">42,294<span></span>
</td>
<td class="nump">45,236<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 );">Total</a></td>
<td class="nump">112,312<span></span>
</td>
<td class="nump">104,103<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_LandMember', window );">Land</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_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>
</tr>
<tr class="re">
<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 );">Sub-total</a></td>
<td class="nump">4,751<span></span>
</td>
<td class="nump">4,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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember', window );">Machinery and equipment</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_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>
</tr>
<tr class="ro">
<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 );">Sub-total</a></td>
<td class="nump">233,357<span></span>
</td>
<td class="nump">226,185<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 equipment and software</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_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>
</tr>
<tr class="re">
<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 );">Sub-total</a></td>
<td class="nump">43,839<span></span>
</td>
<td class="nump">36,361<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>
</tr>
<tr class="re">
<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>
</tr>
<tr class="ro">
<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 );">Sub-total</a></td>
<td class="nump">6,925<span></span>
</td>
<td class="nump">6,894<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_LeaseholdImprovementsMember', window );">Leasehold improvements</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_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>
</tr>
<tr class="re">
<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 );">Sub-total</a></td>
<td class="nump">$ 80,011<span></span>
</td>
<td class="nump">$ 79,144<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Property Plant And Equipment Net, Excludes Construction in Progress</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>form_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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=120391452&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_ConstructionInProgressGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div 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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConstructionInProgressGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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=120391452&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=120391452&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=120400017&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=120391452&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_LandMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_LandMember</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_EquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_EquipmentMember</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_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_LeaseholdImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_LeaseholdImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>65
<FILENAME>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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692477140760">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders&#8217; Equity and Stock-Based Compensation - Additional Information (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Oct. 26, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TreasuryStockValueAcquiredCostMethod', window );">Purchase of common stock through repurchase program</a></td>
<td class="num">$ (5,738,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_StatementClassOfStockAxis=us-gaap_CommonStockMember', window );">Common Stock</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_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>
</tr>
<tr class="re">
<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="nump">$ 50,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_TreasuryStockSharesAcquired', window );">Purchase of common stock through repurchase program (in shares)</a></td>
<td class="num">(136,402)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1', window );">Amount remaining for future repurchases</a></td>
<td class="nump">$ 44,300,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_PlanNameAxis=form_EquityIncentivePlanMember', window );">Equity Incentive Plan</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_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>
</tr>
<tr class="ro">
<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 );">Awards granted (in shares)</a></td>
<td class="nump">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_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=120381028&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_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_StockRepurchaseProgramAuthorizedAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of stock repurchase plan authorized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchaseProgramAuthorizedAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount remaining of a stock repurchase plan authorized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockSharesAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares that have been repurchased during the period and are being held in 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 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=120397183&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=120391452&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_TreasuryStockSharesAcquired</td>
</tr>
<tr>
<td style="padding-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_TreasuryStockValueAcquiredCostMethod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 cost of common and preferred stock that were repurchased during the period. Recorded using the cost 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 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 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6405813&amp;loc=d3e23239-112655<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=120397183&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_TreasuryStockValueAcquiredCostMethod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_StatementClassOfStockAxis=us-gaap_CommonStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StatementClassOfStockAxis=us-gaap_CommonStockMember</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_PlanNameAxis=form_EquityIncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=form_EquityIncentivePlanMember</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>66
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692474182248">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders&#8217; Equity and Stock-Based Compensation - Restricted Stock Unit Activity (Details) - Equity Incentive Plan<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 27, 2021 </div>
<div>$ / shares </div>
<div>shares</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Units</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Awards granted (in shares)</a></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_PlanNameAxis=form_EquityIncentivePlanMember', window );">Restricted Stock Units</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Units</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Beginning balance (in shares)</a></td>
<td class="nump">2,840,922<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Awards granted (in shares)</a></td>
<td class="nump">8,765<span></span>
</td>
</tr>
<tr class="re">
<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 );">Awards vested (in shares)</a></td>
<td class="num">(67,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Awards canceled (in shares)</a></td>
<td class="num">(11,140)<span></span>
</td>
</tr>
<tr class="re">
<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 );">Ending balance (in shares)</a></td>
<td class="nump">2,770,912<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted Average Grant Date Fair Value</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Beginning balance (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 19.80<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Awards granted (in dollars per share) | $ / shares</a></td>
<td class="nump">46.25<span></span>
</td>
</tr>
<tr class="re">
<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 );">Awards vested (in dollars per share) | $ / shares</a></td>
<td class="nump">16.38<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Awards canceled (in dollars per share) | $ / shares</a></td>
<td class="nump">21.21<span></span>
</td>
</tr>
<tr class="re">
<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 );">Ending balance (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 19.96<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=120381028&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=120381028&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=120381028&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=120381028&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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=120381028&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=120381028&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_PlanNameAxis=form_EquityIncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=form_EquityIncentivePlanMember</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>67
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692473702008">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders&#8217; Equity and Stock-Based Compensation - Stock Option Activity (Details) - Equity Incentive Plan<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 27, 2021 </div>
<div>USD ($) </div>
<div>$ / shares </div>
<div>shares</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Options Outstanding</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding, beginning of period (in shares) | shares</a></td>
<td class="nump">106,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_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Options exercised (in shares) | shares</a></td>
<td class="num">(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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding, end of period (in shares) | shares</a></td>
<td class="nump">56,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber', window );">Vested and expected to vest (in shares) | shares</a></td>
<td class="nump">56,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Exercisable (in shares) | shares</a></td>
<td class="nump">56,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward', window );"><strong>Weighted Average Exercise Price</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding, beginning of period (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 8.35<span></span>
</td>
</tr>
<tr class="re">
<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 );">Options exercised (in dollars per share) | $ / shares</a></td>
<td class="nump">8.44<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding, end of period (in dollars per share) | $ / shares</a></td>
<td class="nump">8.28<span></span>
</td>
</tr>
<tr class="re">
<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 );">Vested and expected to vest (in dollars per share) | $ / shares</a></td>
<td class="nump">8.28<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Exercisable (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 8.28<span></span>
</td>
</tr>
<tr class="re">
<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>Additional Disclosures</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Outstanding, weighted average remaining contractual life</a></td>
<td class="text">11 months 1 day<span></span>
</td>
</tr>
<tr class="re">
<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 );">Vested and expected to vest, weighted average remaining contractual life</a></td>
<td class="text">11 months 1 day<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1', window );">Exercisable, weighted average remaining contractual life</a></td>
<td class="text">11 months 1 day<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue', window );">Outstanding, aggregate intrinsic value | $</a></td>
<td class="nump">$ 2,078,820<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Vested end expected to vest, aggregate intrinsic value | $</a></td>
<td class="nump">2,078,820<span></span>
</td>
</tr>
<tr class="re">
<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 );">Exercisable, aggregate intrinsic value | $</a></td>
<td class="nump">$ 2,078,820<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120381028&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=120381028&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_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=120381028&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=120381028&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=120381028&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_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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of fully vested and expected to vest exercisable options that may be converted into shares under option plan. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount by which current fair value of underlying stock exceeds exercise price of fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted-average exercise price, at which grantee can acquire shares reserved for issuance, for fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which option holders acquired shares when converting their stock options into shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120381028&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=120381028&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=120381028&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=120381028&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=120381028&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=120397183&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=120391452&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=120391452&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_PlanNameAxis=form_EquityIncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=form_EquityIncentivePlanMember</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>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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692472866952">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders&#8217; Equity and Stock-Based Compensation - ESPP Activity (Details) - Employee stock purchase plan<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 27, 2021 </div>
<div>$ / shares </div>
<div>shares</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans', window );">Shares issued (in shares) | shares</a></td>
<td class="nump">228,784<span></span>
</td>
</tr>
<tr class="re">
<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 per share purchase price (in dollars per share)</a></td>
<td class="nump">$ 22.14<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_form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock', window );">Weighted average per share discount from the fair value of our common stock on the date of issuance (in dollars per share)</a></td>
<td class="num">$ (18.73)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 Discount From Fair Value From Date Of Issuance, Common Stock</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>form_</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_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=120381028&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_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 as a result of an employee stock purchase 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 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=120397183&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=120391452&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=120391452&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_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans</td>
</tr>
<tr>
<td style="padding-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_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>69
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692472357608">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders&#8217; Equity and Stock-Based Compensation - Stock-Based Compensation (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Mar. 28, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Share-based Payment Arrangement, Expensed and Capitalized, Amount [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_AllocatedShareBasedCompensationExpense', window );">Total stock-based compensation</a></td>
<td class="nump">$ 7,077<span></span>
</td>
<td class="nump">$ 5,623<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 revenues</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_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Share-based Payment Arrangement, Expensed and Capitalized, Amount [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_AllocatedShareBasedCompensationExpense', window );">Total stock-based compensation</a></td>
<td class="nump">1,335<span></span>
</td>
<td class="nump">937<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</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_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Share-based Payment Arrangement, Expensed and Capitalized, Amount [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_AllocatedShareBasedCompensationExpense', window );">Total stock-based compensation</a></td>
<td class="nump">1,689<span></span>
</td>
<td class="nump">1,439<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_SellingGeneralAndAdministrativeExpensesMember', window );">Selling, general and administrative</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_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Share-based Payment Arrangement, Expensed and Capitalized, Amount [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_AllocatedShareBasedCompensationExpense', window );">Total stock-based compensation</a></td>
<td class="nump">$ 4,053<span></span>
</td>
<td class="nump">$ 3,247<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=120381028&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=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllocatedShareBasedCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_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_SellingGeneralAndAdministrativeExpensesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_SellingGeneralAndAdministrativeExpensesMember</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>70
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692473835608">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders&#8217; Equity and Stock-Based Compensation - Unrecognized Compensation Costs (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 27, 2021 </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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions', window );">Unrecognized Expense</a></td>
<td class="nump">$ 36,121<span></span>
</td>
</tr>
<tr class="re">
<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 );">Average Expected Recognition Period in Years</a></td>
<td class="text">1 year 11 months 26 days<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_RestrictedStockMember', window );">Restricted stock units</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions', window );">Unrecognized Expense</a></td>
<td class="nump">$ 27,429<span></span>
</td>
</tr>
<tr class="re">
<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 );">Average Expected Recognition Period in Years</a></td>
<td class="text">2 years 10 days<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=form_PerformanceRestrictedStockUnitsMember', window );">Performance restricted stock units</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions', window );">Unrecognized Expense</a></td>
<td class="nump">$ 7,719<span></span>
</td>
</tr>
<tr class="re">
<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 );">Average Expected Recognition Period in Years</a></td>
<td class="text">1 year 11 months 4 days<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 purchase plan</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions', window );">Unrecognized Expense</a></td>
<td class="nump">$ 973<span></span>
</td>
</tr>
<tr class="re">
<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 );">Average Expected Recognition Period in Years</a></td>
<td class="text">10 months 9 days<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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=120381028&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=120381028&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_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_AwardTypeAxis=us-gaap_RestrictedStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=form_PerformanceRestrictedStockUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=form_PerformanceRestrictedStockUnitsMember</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_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>71
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692473505032">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Net Income per Share (Details) - shares<br> shares in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Mar. 28, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 used in computing basic net income per share (in shares)</a></td>
<td class="nump">77,598<span></span>
</td>
<td class="nump">76,005<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements', window );">Add potentially dilutive securities (in shares)</a></td>
<td class="nump">2,390<span></span>
</td>
<td class="nump">2,505<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Weighted-average shares used in computing diluted net income per share (in shares)</a></td>
<td class="nump">79,988<span></span>
</td>
<td class="nump">78,510<span></span>
</td>
</tr>
<tr class="re">
<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 );">Securities not included as they would have been antidilutive (in shares)</a></td>
<td class="nump">3<span></span>
</td>
<td class="nump">9<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1707-109256<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 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<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 45<br> -Paragraph 28A<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1500-109256<br><br>Reference 4: 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 23<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1757-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_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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 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 16<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&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://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 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 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=d3e1448-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>72
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692476554024">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Narrative (Details)<br></strong></div></th>
<th class="th"><div>Mar. 27, 2021</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_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee, Lease, Description [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_LesseeOperatingLeaseRenewalTerm', window );">Operating lease, renewal term</a></td>
<td class="text">20 years<span></span>
</td>
</tr>
<tr class="re">
<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">6 years<span></span>
</td>
</tr>
<tr class="ro">
<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</a></td>
<td class="nump">3.85%<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</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_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee, Lease, Description [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_LesseeOperatingLeaseTermOfContract', window );">Operating lease, term of contract</a></td>
<td class="text">1 year<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</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_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee, Lease, Description [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_LesseeOperatingLeaseTermOfContract', window );">Operating lease, term of contract</a></td>
<td class="text">8 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_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_AutomobilesMember', window );">Automobiles | Minimum</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_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee, Lease, Description [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_LesseeOperatingLeaseTermOfContract', window );">Operating lease, term of contract</a></td>
<td class="text">1 year<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_AutomobilesMember', window );">Automobiles | Maximum</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_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee, Lease, Description [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_LesseeOperatingLeaseTermOfContract', window );">Operating lease, term of contract</a></td>
<td class="text">4 years<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_LesseeLeaseDescriptionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_LesseeLeaseDescriptionLineItems</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeaseRenewalTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Term of lessee's operating lease renewal, 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918673-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_LesseeOperatingLeaseRenewalTerm</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeaseTermOfContract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Term of lessee's 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918673-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_LesseeOperatingLeaseTermOfContract</td>
</tr>
<tr>
<td style="padding-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_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=121609121&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=121568110&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=121568110&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=121609121&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_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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_AutomobilesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_AutomobilesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>73
<FILENAME>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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692473287928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases - Components of Lease Expense (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Mar. 28, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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_OperatingLeaseExpense', window );">Operating lease expense</a></td>
<td class="nump">$ 2,123<span></span>
</td>
<td class="nump">$ 1,924<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShortTermLeaseCost', window );">Short-term lease expense</a></td>
<td class="nump">37<span></span>
</td>
<td class="nump">40<span></span>
</td>
</tr>
<tr class="ro">
<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 expense</a></td>
<td class="nump">537<span></span>
</td>
<td class="nump">383<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_LeaseCost', window );">Total lease expense</a></td>
<td class="nump">$ 2,697<span></span>
</td>
<td class="nump">$ 2,347<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_LeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 lease cost recognized by lessee for lease contract.</p></div>
<a 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> -URI http://asc.fasb.org/extlink&amp;oid=121609121&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=121568110&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_LeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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_OperatingLeaseExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 lease expense. Excludes 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 45<br> -Paragraph 4<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121603541&amp;loc=SL77918638-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_OperatingLeaseExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ShortTermLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 lease cost, excluding expense for lease with term of one month or less.</p></div>
<a 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 (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&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=121568110&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_ShortTermLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=121609121&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=121568110&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>74
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692481271160">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Schedule of Future Minimum Payments Under Leases (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Dec. 26, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear', window );">Remainder of 2021</a></td>
<td class="nump">$ 6,747<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">2022</a></td>
<td class="nump">8,040<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 );">2023</a></td>
<td class="nump">6,710<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">2024</a></td>
<td class="nump">6,297<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 );">2025</a></td>
<td class="nump">7,814<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_form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour', window );">Thereafter</a></td>
<td class="nump">14,416<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 );">Total minimum lease payments</a></td>
<td class="nump">50,024<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Less: interest</a></td>
<td class="num">(8,982)<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 );">Present value of net minimum lease payments</a></td>
<td class="nump">41,042<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Less: current portion</a></td>
<td class="num">(7,557)<span></span>
</td>
<td class="num">$ (6,704)<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Long-term operating lease liabilities</a></td>
<td class="nump">$ 33,485<span></span>
</td>
<td class="nump">$ 27,996<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Lessee, Operating Lease, Liability, to be Paid, after Year Four</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>form_</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_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 payment 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=121609121&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_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 payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a 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=121609121&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_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 payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a 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=121609121&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 payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a 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=121609121&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 payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a 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=121609121&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_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current 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/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=121609121&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_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=121609121&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=121603541&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=121603541&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=121603541&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>75
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692470734760">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue - Additional Information (Details) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Dec. 26, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Performance obligations</a></td>
<td class="nump">$ 6.3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetNet', window );">Contract assets</a></td>
<td class="nump">4.8<span></span>
</td>
<td class="nump">$ 3.7<span></span>
</td>
</tr>
<tr class="ro">
<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 liabilities</a></td>
<td class="nump">19.9<span></span>
</td>
<td class="nump">$ 22.2<span></span>
</td>
</tr>
<tr class="re">
<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 );">Revenue recognized included in contracts</a></td>
<td class="nump">$ 9.3<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_ContractWithCustomerAssetNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of 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 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130549-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 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121556615&amp;loc=SL49130531-203044<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 3<br> -URI http://asc.fasb.org/extlink&amp;oid=121556615&amp;loc=SL49130533-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_ContractWithCustomerAssetNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=121556615&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=121604090&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=121556615&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=121604090&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_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 transaction price allocated to performance obligation that has not been recognized as revenue.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130556-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_RevenueRemainingPerformanceObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>76
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692473204664">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Revenue - Remaining Performance Obligation (Details)<br></strong></div></th>
<th class="th"><div>Mar. 27, 2021</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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2021-03-28', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2021-03-28</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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems', window );"><strong>Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [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_RevenueRemainingPerformanceObligationPercentage', window );">Revenue, remaining performance obligation, percentage</a></td>
<td class="nump">74.50%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Revenue, remaining performance obligation, expected timing of satisfaction, period</a></td>
<td class="text">9 months<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2021-12-26', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2021-12-26</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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems', window );"><strong>Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [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_RevenueRemainingPerformanceObligationPercentage', window );">Revenue, remaining performance obligation, percentage</a></td>
<td class="nump">16.60%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Revenue, remaining performance obligation, expected timing of satisfaction, period</a></td>
<td class="text">1 year<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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2023-01-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-01-01</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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems', window );"><strong>Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [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_RevenueRemainingPerformanceObligationPercentage', window );">Revenue, remaining performance obligation, percentage</a></td>
<td class="nump">8.90%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Revenue, remaining performance obligation, expected timing of satisfaction, period</a></td>
<td class="text"> <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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems</td>
</tr>
<tr>
<td style="padding-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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 in which remaining performance obligation is expected to be recognized as revenue, 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130556-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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1</td>
</tr>
<tr>
<td style="padding-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_RevenueRemainingPerformanceObligationPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 remaining performance obligation to total remaining performance obligation not recognized as revenue.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130556-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_RevenueRemainingPerformanceObligationPercentage</td>
</tr>
<tr>
<td style="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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2021-03-28">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2021-03-28</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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2021-12-26">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2021-12-26</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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2023-01-01">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2023-01-01</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>77
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692469188680">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Operating Segments and Enterprise-Wide Information - Additional Information (Details)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 27, 2021 </div>
<div>segment</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_NumberOfReportableSegments', window );">Number of reportable segments</a></td>
<td class="nump">2<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_NumberOfReportableSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8672-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfReportableSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>78
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692475788232">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Operating Segments and Enterprise-Wide Information - Operating Results by Segment (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Mar. 28, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenues</a></td>
<td class="nump">$ 186,636<span></span>
</td>
<td class="nump">$ 160,753<span></span>
</td>
</tr>
<tr class="re">
<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">$ 76,706<span></span>
</td>
<td class="nump">$ 67,390<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_form_GrossMarginPercent', window );">Gross margin</a></td>
<td class="nump">41.10%<span></span>
</td>
<td class="nump">41.90%<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_StatementBusinessSegmentsAxis=form_ProbeCardsSegmentMember', window );">Probe Cards</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenues</a></td>
<td class="nump">$ 158,898<span></span>
</td>
<td class="nump">$ 134,715<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_StatementBusinessSegmentsAxis=form_SystemsSegmentMember', window );">Systems</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenues</a></td>
<td class="nump">27,738<span></span>
</td>
<td class="nump">26,038<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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating segments | Probe Cards</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenues</a></td>
<td class="nump">158,898<span></span>
</td>
<td class="nump">134,715<span></span>
</td>
</tr>
<tr class="ro">
<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">$ 70,315<span></span>
</td>
<td class="nump">$ 60,743<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_form_GrossMarginPercent', window );">Gross margin</a></td>
<td class="nump">44.30%<span></span>
</td>
<td class="nump">45.10%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating segments | Systems</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenues</a></td>
<td class="nump">$ 27,738<span></span>
</td>
<td class="nump">$ 26,038<span></span>
</td>
</tr>
<tr class="re">
<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">$ 13,599<span></span>
</td>
<td class="nump">$ 13,334<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_form_GrossMarginPercent', window );">Gross margin</a></td>
<td class="nump">49.00%<span></span>
</td>
<td class="nump">51.20%<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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating segments | Corporate and Other</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_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenues</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_GrossProfit', window );">Gross profit</a></td>
<td class="num">$ (7,208)<span></span>
</td>
<td class="num">$ (6,687)<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_form_GrossMarginPercent', window );">Gross margin</a></td>
<td class="nump">0.00%<span></span>
</td>
<td class="nump">0.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_form_GrossMarginPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 Margin, Percent</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">form_GrossMarginPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>form_</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_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-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 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 4: 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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 6: 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 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 7: 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 (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 8: 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=120395209&amp;loc=SL114868664-224227<br><br>Reference 9: 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 (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-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 40<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9031-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 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9038-108599<br><br>Reference 4: 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 (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 5: 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=120311839&amp;loc=d3e8933-108599<br><br>Reference 6: 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=121604090&amp;loc=SL49130543-203045<br><br>Reference 7: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 8: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 9: 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 42<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9054-108599<br><br>Reference 10: 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=121604090&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-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_StatementBusinessSegmentsAxis=form_ProbeCardsSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StatementBusinessSegmentsAxis=form_ProbeCardsSegmentMember</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_StatementBusinessSegmentsAxis=form_SystemsSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StatementBusinessSegmentsAxis=form_SystemsSegmentMember</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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</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_StatementBusinessSegmentsAxis=us-gaap_CorporateAndOtherMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StatementBusinessSegmentsAxis=us-gaap_CorporateAndOtherMember</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>79
<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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692477623624">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Operating Segments and Enterprise-Wide Information - Revenue by Segment, Recognition Type, and Geographic Area (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 27, 2021</div></th>
<th class="th"><div>Mar. 28, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">$ 186,636<span></span>
</td>
<td class="nump">$ 160,753<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_StatementBusinessSegmentsAxis=form_ProbeCardsSegmentMember', window );">Probe Cards</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_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>
</tr>
<tr class="re">
<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 );">Revenues</a></td>
<td class="nump">158,898<span></span>
</td>
<td class="nump">134,715<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_StatementBusinessSegmentsAxis=form_SystemsSegmentMember', window );">Systems</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">27,738<span></span>
</td>
<td class="nump">26,038<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_TW', window );">Taiwan</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_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>
</tr>
<tr class="re">
<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 );">Revenues</a></td>
<td class="nump">45,580<span></span>
</td>
<td class="nump">31,780<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_TW', window );">Taiwan | Probe Cards</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">44,734<span></span>
</td>
<td class="nump">30,439<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_TW', window );">Taiwan | Systems</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_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>
</tr>
<tr class="re">
<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 );">Revenues</a></td>
<td class="nump">846<span></span>
</td>
<td class="nump">1,341<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_CN', window );">China</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">42,625<span></span>
</td>
<td class="nump">43,642<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_CN', window );">China | Probe Cards</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_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>
</tr>
<tr class="re">
<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 );">Revenues</a></td>
<td class="nump">37,831<span></span>
</td>
<td class="nump">37,280<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_CN', window );">China | Systems</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">4,794<span></span>
</td>
<td class="nump">6,362<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>
</tr>
<tr class="ro">
<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>
</tr>
<tr class="re">
<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 );">Revenues</a></td>
<td class="nump">29,486<span></span>
</td>
<td class="nump">31,916<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 | Probe Cards</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">21,308<span></span>
</td>
<td class="nump">25,611<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 | Systems</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_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>
</tr>
<tr class="re">
<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 );">Revenues</a></td>
<td class="nump">8,178<span></span>
</td>
<td class="nump">6,305<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=srt_AsiaPacificMember', window );">Asia-Pacific</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">28,958<span></span>
</td>
<td class="nump">7,863<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=srt_AsiaPacificMember', window );">Asia-Pacific | Probe Cards</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_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>
</tr>
<tr class="re">
<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 );">Revenues</a></td>
<td class="nump">27,878<span></span>
</td>
<td class="nump">4,455<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=srt_AsiaPacificMember', window );">Asia-Pacific | Systems</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">1,080<span></span>
</td>
<td class="nump">3,408<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_KR', window );">South Korea</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_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>
</tr>
<tr class="re">
<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 );">Revenues</a></td>
<td class="nump">19,085<span></span>
</td>
<td class="nump">14,088<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_KR', window );">South Korea | Probe Cards</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">18,001<span></span>
</td>
<td class="nump">13,692<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_KR', window );">South Korea | Systems</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_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>
</tr>
<tr class="re">
<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 );">Revenues</a></td>
<td class="nump">1,084<span></span>
</td>
<td class="nump">396<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=srt_EuropeMember', window );">Europe</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">9,999<span></span>
</td>
<td class="nump">21,043<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=srt_EuropeMember', window );">Europe | Probe Cards</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_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>
</tr>
<tr class="re">
<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 );">Revenues</a></td>
<td class="nump">2,833<span></span>
</td>
<td class="nump">16,210<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=srt_EuropeMember', window );">Europe | Systems</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">7,166<span></span>
</td>
<td class="nump">4,833<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_JP', window );">Japan</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_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>
</tr>
<tr class="re">
<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 );">Revenues</a></td>
<td class="nump">9,321<span></span>
</td>
<td class="nump">8,370<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_JP', window );">Japan | Probe Cards</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">5,249<span></span>
</td>
<td class="nump">5,535<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_JP', window );">Japan | Systems</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_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>
</tr>
<tr class="re">
<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 );">Revenues</a></td>
<td class="nump">4,072<span></span>
</td>
<td class="nump">2,835<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=form_RestOfTheWorldMember', window );">Rest of the world</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">1,582<span></span>
</td>
<td class="nump">2,051<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=form_RestOfTheWorldMember', window );">Rest of the world | Probe Cards</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_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>
</tr>
<tr class="re">
<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 );">Revenues</a></td>
<td class="nump">1,064<span></span>
</td>
<td class="nump">1,493<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=form_RestOfTheWorldMember', window );">Rest of the world | Systems</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">518<span></span>
</td>
<td class="nump">558<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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredAtPointInTimeMember', window );">Products transferred at a point in time</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_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>
</tr>
<tr class="re">
<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 );">Revenues</a></td>
<td class="nump">183,147<span></span>
</td>
<td class="nump">158,927<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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredAtPointInTimeMember', window );">Products transferred at a point in time | Probe Cards</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">158,476<span></span>
</td>
<td class="nump">134,069<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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredAtPointInTimeMember', window );">Products transferred at a point in time | Systems</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_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>
</tr>
<tr class="re">
<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 );">Revenues</a></td>
<td class="nump">24,671<span></span>
</td>
<td class="nump">24,858<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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredOverTimeMember', window );">Products and services transferred over time</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">3,489<span></span>
</td>
<td class="nump">1,826<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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredOverTimeMember', window );">Products and services transferred over time | Probe Cards</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_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>
</tr>
<tr class="re">
<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 );">Revenues</a></td>
<td class="nump">422<span></span>
</td>
<td class="nump">646<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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredOverTimeMember', window );">Products and services transferred over time | Systems</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">3,067<span></span>
</td>
<td class="nump">1,180<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_ProductOrServiceAxis=form_FoundryLogicProductGroupMember', window );">Foundry &amp; Logic</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_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>
</tr>
<tr class="re">
<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 );">Revenues</a></td>
<td class="nump">113,410<span></span>
</td>
<td class="nump">105,745<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_ProductOrServiceAxis=form_FoundryLogicProductGroupMember', window );">Foundry &amp; Logic | Probe Cards</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">113,410<span></span>
</td>
<td class="nump">105,745<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_ProductOrServiceAxis=form_FoundryLogicProductGroupMember', window );">Foundry &amp; Logic | Systems</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_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>
</tr>
<tr class="re">
<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 );">Revenues</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_srt_ProductOrServiceAxis=form_DRAMProductGroupMember', window );">DRAM</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">33,898<span></span>
</td>
<td class="nump">24,696<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_ProductOrServiceAxis=form_DRAMProductGroupMember', window );">DRAM | Probe Cards</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_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>
</tr>
<tr class="re">
<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 );">Revenues</a></td>
<td class="nump">33,898<span></span>
</td>
<td class="nump">24,696<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_ProductOrServiceAxis=form_DRAMProductGroupMember', window );">DRAM | Systems</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</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_srt_ProductOrServiceAxis=form_FlashProductGroupMember', window );">Flash</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_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>
</tr>
<tr class="re">
<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 );">Revenues</a></td>
<td class="nump">11,590<span></span>
</td>
<td class="nump">4,274<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_ProductOrServiceAxis=form_FlashProductGroupMember', window );">Flash | Probe Cards</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">11,590<span></span>
</td>
<td class="nump">4,274<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_ProductOrServiceAxis=form_FlashProductGroupMember', window );">Flash | Systems</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_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>
</tr>
<tr class="re">
<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 );">Revenues</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_srt_ProductOrServiceAxis=form_SystemsProductGroupMember', window );">Systems</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">27,738<span></span>
</td>
<td class="nump">26,038<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_ProductOrServiceAxis=form_SystemsProductGroupMember', window );">Systems | Probe Cards</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_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>
</tr>
<tr class="re">
<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 );">Revenues</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_srt_ProductOrServiceAxis=form_SystemsProductGroupMember', window );">Systems | Systems</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_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>
</tr>
<tr class="ro">
<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 );">Revenues</a></td>
<td class="nump">$ 27,738<span></span>
</td>
<td class="nump">$ 26,038<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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-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 40<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9031-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 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9038-108599<br><br>Reference 4: 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 (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 5: 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=120311839&amp;loc=d3e8933-108599<br><br>Reference 6: 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=121604090&amp;loc=SL49130543-203045<br><br>Reference 7: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 8: 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=120311839&amp;loc=d3e8736-108599<br><br>Reference 9: 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 42<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9054-108599<br><br>Reference 10: 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=121604090&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_StatementBusinessSegmentsAxis=form_ProbeCardsSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StatementBusinessSegmentsAxis=form_ProbeCardsSegmentMember</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_StatementBusinessSegmentsAxis=form_SystemsSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StatementBusinessSegmentsAxis=form_SystemsSegmentMember</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=country_TW">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TW</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=country_CN">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_CN</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_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=srt_AsiaPacificMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=srt_AsiaPacificMember</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=country_KR">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_KR</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=srt_EuropeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=srt_EuropeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_JP">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_JP</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=form_RestOfTheWorldMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=form_RestOfTheWorldMember</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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredAtPointInTimeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredAtPointInTimeMember</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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredOverTimeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredOverTimeMember</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_ProductOrServiceAxis=form_FoundryLogicProductGroupMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ProductOrServiceAxis=form_FoundryLogicProductGroupMember</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_ProductOrServiceAxis=form_DRAMProductGroupMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ProductOrServiceAxis=form_DRAMProductGroupMember</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_ProductOrServiceAxis=form_FlashProductGroupMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ProductOrServiceAxis=form_FlashProductGroupMember</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_ProductOrServiceAxis=form_SystemsProductGroupMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ProductOrServiceAxis=form_SystemsProductGroupMember</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>80
<FILENAME>R9999.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.21.1</span><table class="report" border="0" cellspacing="2" id="idm140692470636888">
<tr>
<th class="tl" colspan="1">Label</th>
<th class="tl"><strong>Element</strong></th>
<th class="th" colspan="1">Value</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_RestrictedCashNoncurrent', window );">Restricted Cash, Noncurrent</a></td>
<td class="th" style="border-bottom: 0px;">us-gaap_RestrictedCashNoncurrent</td>
<td class="nump">$ 1,894,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_RestrictedCashNoncurrent', window );">Restricted Cash, Noncurrent</a></td>
<td class="th" style="border-bottom: 0px;">us-gaap_RestrictedCashNoncurrent</td>
<td class="nump">1,361,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_RestrictedCashCurrent', window );">Restricted Cash, Current</a></td>
<td class="th" style="border-bottom: 0px;">us-gaap_RestrictedCashCurrent</td>
<td class="nump">2,798,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_RestrictedCashCurrent', window );">Restricted Cash, Current</a></td>
<td class="th" style="border-bottom: 0px;">us-gaap_RestrictedCashCurrent</td>
<td class="nump">$ 2,107,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_RestrictedCashCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 restricted as to withdrawal or usage, classified as current. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits.</p></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 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=SL98516268-108586<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<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=121566466&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_RestrictedCashCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_RestrictedCashNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></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 restricted as to withdrawal or usage, classified as noncurrent. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits.</p></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 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6812-107765<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<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=120391452&amp;loc=d3e13212-122682<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 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=SL98516268-108586<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 210<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120413173&amp;loc=SL116631458-115580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestrictedCashNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>EXCEL
<SEQUENCE>81
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
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
MYN.1DENBS&A ,P^Y;W)KF$T0FV5<:@5O [#3XZE\%8K,8<5(EZ0^5R(=61J
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
MW'R!.J"N]3>37+LGV=2V44!F*VUD68.10<E$]:8OM1!; /3C!R0U(-D'= X
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
M)E\941=W'^#\_"\'\P5FR2 HW!N+ZMT<'VC!$+"E]J6Z=/RW(^;KB[O+?@*
MM%O@](Q44!\:YH]>#E[T8MF;L<K/,.%<3>J]?D#ROWD/WBW4ZZ/9JW&6R-P<
M3-U4 #4QSK!R.'<F*8FB!+WFJ7;W,GMS@NB!AYVD(T.:!^%P-N)<;S_QC@:*
M96:]*H#DZL:[>^H&#*=$-_"KZ+F?.RO[^JAX8HI_CEF2V4@+A_56V%>4B\=A
MF4D0%I-\00]YA*U;(V.=7<(JT%WR6D"K%<E>+U8&[(*9QLJ>,B/3K0PX;I#]
MXTM:&VO%BQ6$=J4R/^[J'XRG2R<[P["NA/V 2VBR+\NT%PW++?7G;)Q9T(/N
M,M.M=O22,6<3C&9I2B$"802M^@Y+0;-^[NH7YM77IB[@V@W=28YG,3N8'7&?
M9%;I/>;"[PM^=[0OXEM:H<F1E%+=<N'CFKLWE_/)T<DK=:"PTYG*[*\);R06
M<:[7L:>"::H/*E$7<C3IFH,!8X>X+$W)S4$USO $32@R7AAHI>E']Z 59(=!
M_4KQ/;,9/K]")GJ2-1]<7 Z83G93*M<LX"DO@!O3!-[>EA\Y:Q"N\;(V[,T"
M:R%GEJ'6D=>ZC ,#]#,V'F#PE@MYJ>TG]6[%CS/.'<'\_/;RW6U/,1R532VW
M4R:#NI_M:=3SB' <'_(ZX;S_5=NT?: :7\S\_& V_SSS+R7^"8^A FL3>7K%
MM S#$TG!L_GJ&0F:^&0)G.[3[F(LWK3:Q$TI"\3+7:';((N-Q):3AUS9U ZY
M&X0W>50^P<>+^_OMP#K!K3NJ:1OH84B$A3CG-5H9< H5PHL!%R"NE\M%9B+W
M@H<T#-.., [G0AB+R1#T_\$5X299X+"D?D91B8WQFJ9D7.7E@09<*(^?T&@J
MT[SO"I- %>H[T&\MI;>AQ!_S1=ZMG'^""3?>_P,*M_U5>L.4ET&FR4>*?=AI
MJ\5/N+^"$EYHT@J*X@C=<!].-QX6H=LSF -"P,:<7U_%SY#BEA70(U3#6\W
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
M*^.!^+C"\[!E_CS'7"M6<%>R$3:#P]Q886^@%P;K6-QHLSY<82<+ T7BG#!
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
MT+G["4PSW/V0Z$U(?\!/[>T%I@X')],#URBI/A0FXQ_$S$T![N:W*QDB8-$
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
M4 _6Z6X/)@6=4..;/^WOX0A0IJ\ V![ @NZQ4%!YQ1U?+XW>@?'9Q.87P6I
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
MO,:S*JX )Z9B&<X"JC"#^A&#5Z7A:X&P58)*BJ("RS8"J40R)3,NT("E;>.
M!FJ#.7 )&1-9+9AU>/J,>0:2A/FSL,<#DSGD7-266*\"WI&6+51M"&G>3\B)
M1GR1?J#D987/7CL:A7#ORP/S#^P1-57['_946=5_,S<<AH/Q"(:781P/8)'G
M4"F+TG(FQ*&Q324.!K-:<\M)/@G3<4S/ >'_W<+9"QB.P_&(3(S"02^&]?-9
M4GFTJ-T=,)^$ _6D6N10T)&P0:0N1&X[HRF,X;6/+SJIYQ+USG<M0P9K:9O2
M[E:[QKAH^L$SO.FJE($=EP8$;HD:7PP' >BF4S43JRK?'3;*4J_QPX*:.VH'
MH/VMHBMN)^Z [G<Q_PU02P,$%     @ AX:D4A4W>(IQ @  F 4  !D   !X
M;"]W;W)K<VAE971S+W-H965T,3DN>&ULK53+;MLP$/R5A<ZI)<O. X%MP'9:
MM&C3! G:'HH>:&DE$>'#)5=Q\O=94K+B%DT.;2\2'S.S.R1W9SOK[GR#2/"@
ME?'SI"':GJ>I+QK4PH_L%@WO5-9I03QU=>JW#D4925JE>9:=I%I(DRQF<>W:
M+6:V)24-7COPK=;"/:Y0V=T\&2?[A1M9-Q06TL5L*VJ\1?JRO78\2P>54FHT
M7EH##JMYLAR?KZ8!'P%?)>[\P1B"DXVU=V'RH9PG64@(%184% 3_[G&-2@4A
M3N-GKYD,(0/Q<+Q7?Q>]LY>-\+BVZILLJ9DG9PF46(E6T8W=O<?>SW'0*ZSR
M\0N[#GN<)U"TGJSNR9R!EJ;[BX?^' X(9]D+A+PGY#'O+E#,\D*06,R<W8$+
M:%8+@V@ULCDY:<*EW)+C7<D\6JRMUI+XE,F#,"6LK2%I:C2%1#]+B4,$8%KT
M<JM.+G]!;@*7+-!X>&M*+'_EIYS:D%^^SV^5ORIX*=P(\M,CR+-\_(K>9/ [
MB7J3O_$+%](7ROK6(7Q?;CPY?C0_7HDZ':).8]3I_SKE?Y"#3\BOU,,M(GRV
MA#">'.W71A$:7+5"P=5&R5J$XMC+/,M>M0Z* ZS]#5L<8!MQCV L\;LD=%(H
M]0A%(SBA$H0'6P'?8M$,UPB5LQJHL1ZA[$Z<D=* Y:!+8T*\&]Q:1\!U&XH/
MQMF;C\ MB%D(CR@<8'A@<($%Z@TZR$^B=C9BJS7S+P5Q+OY/=Y<>5(M&5\>>
MX-E1:Z@KG&%U:#O+KMJ>X5W/8E^UY!-16#$U&YT>)^"Z/M!-R&YC[6TL<27'
M8<.M$UT \'YE^8;Z20@P-./%$U!+ P04    " "'AJ1286D?I6P$  #7"0
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
MU80RX$(S;J&6%*0D':[YF34+S7+Q5'UP"J$LZR&68[4F5>M*[1P6^^"0M6S
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
M=^F1$BHQ"=OF<RH27):M5UO3YVJIC6$M%EBT#I5I9 4@ J*4N>5.IQ]73)K
MQ==)EWGLZ/KA%OEJ,DSDZ<"2B2 7:U9*F-,6A&:N<RXYA81,*;J4CT:3?*J.
M3U39[_4*@&O=*HR2/;/)P>2(\B11:J<Q!7X7\.NI71#?J@58!T[)Q2T%/IZ)
M3E(XGQZ=/A<' NVH+O5F<_.:;6'E.AD;(JB2=T;%Z@\?C=KD(,!((0I+G5-R
MJ ISJ.Y'% DOE.%<=PU'+Q6X\T+\<O#MZ&=W-[Z1+_D8@=J4]ZB7.VJ5+VF!
M4ZEM+73MJ>><_TY>P^(*Y\)^;F9H9LFS!+4,U(PF' B@=^C3@,%;"N2Y-)_%
M^P4-)YQ;@GGW]NK];4<Q9)6)*;<6QO6]ZTAB@Y(C]BS9![^.R.__DB;V3(C&
M)ST_/9A,O_7\4X[?XC%$8*4#5?,06WAHPB[8Z:^.D2")9N; Z3YV7-K@)-=$
M;HI>4-229K+QW(ZQ;<EY\)6)Z9"R@7G3V6H;'\?J;Z8#R02WKJFFJ2&'(&$6
M(I]72&7 R50(+7I< +N>#A<NTI0+#JNQL5H3QN&4"6,VZH/^%U1A;N*V$ZWU
M-Q05V1@G3,'EBA$AIZ^YD(>W:#2&:>K2F4D@"O'MU9=&Q3-<Y(_I++5DUFUA
M0HGW=T"AM+^.AV,^PA)-/JK0F1U[<?R$^@L(H<XQ=JX(#M\6]WYUHV+AV\:'
M.,![]/GIY,UZ^F@W=XX.IFIJLWJJB[SAEFMG2-% 3("G==ATW;Y6Z[1KM4[W
M=_ETIOQ-EHW:U5?M7_NI !_BN$R5Q.MYJ5+M(I'W)#)6E*;?5!)H"<Q2RSFQ
M/9_2@52N F4^=>0-P_JEL41$E72?X3C0:Q8E@L61M%02_?J<CV!X:CZ:#8T.
MHC^;XSA>+:;YZ= ;SQ,ES"KC7J9N6K\F]!L?V;%"J]*XOKULAJ2B45+-?!D9
M\.1,O"-Y8LJSVD* J7:>3B"):&1Y$#2REPU)1T[B)9G%-;J]#J4*%6\TDO(8
MNK<E]W.[T#G;TF36UZ0)\,)7!)Q>&@Y5)*A%JKI["9\F!-*5"(Q+*"=X2<<6
MW^1;O.FY=KBUP-"!(29?JM2166!;:PN#3?B@E/ID\5!T/6+?)1'%3E=N60PY
M*;/.V;EUW/,@KWN34GQ@5QG5!R\AUX+FRMX=PBD8VQYDIV5G',6;P![N K8Q
MW\#9MMC=;$036L[<EG;YF/I2)D].'[LR45TYMTT@;9JJ;KDP!KL$E&@^)+'$
MBN]>J,AIP[!S@6O-Z%OQR%?C>7LTGRL?-FZ]Y+V$9TGM!D?KZ+=,NZRI"#&X
MDSO>S2X4?,M!"XJ+M6,7=FWR@-U"/X&X&*WOS6(- E;4NE..I$0:=G&,@1;Y
MO'&MH=^_%4C7+>WM!":L._&3MIOG6S#I'#=_:T:[1E<\;$]UGM15FIU+5W9A
MB X'?8?F)BKCJ3=T<ZIS;EN,3Y>2,9C;<W1$J2>UEH]1)-XX:JTV<HJO/RA
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
M"BZ ]YE2=C-  <V%]/7?4$L#!!0    ( (>&I%+;"B0=D (  &T%   9
M>&PO=V]R:W-H965T<R]S:&5E=#,P+GAM;'U446_:,!#^*Z=H#T5"#804* (D
M:#=MTBJAMEL?ICT8YR!6'3NSG:;]]SL[(:-3X26^L^^^[\Z7S_-:FV>;(SIX
M+:2RBRAWKIS%L>4Y%LQ>ZA(5G>RT*9@CU^QC6QID64@J9)P,!N.X8$)%RWG8
MVYCE7%=."H4; [8J"F;>UBAUO8B&T6'C7NQSYS?BY;QD>WQ ]Z/<&/+B#B43
M!2HKM *#NT6T&L[6J8\/ 3\%UO;(!M_)5NMG[WS+%M' %X02N?,(C)87O$$I
M/1"5\:?%C#I*GWAL']"_A-ZIERVS>*/ED\A<OHBF$62X8Y5T][K^BFT_5QZ/
M:VG#%^HF-J5@7EFGBS:9*BB$:E;VVM[#4<)T<"(A:1.24'=#%*J\98XMYT;7
M8'PTH7DCM!JRJ3BA_% >G*%307EN^<2,8<J]P<4CVTJTO7GL"-8?QKR%6#<0
MR0F($=QIY7(+GU6&V?O\F,KI:DH.-:V3LX!WS%Q",NE#,DB&9_!&78^C@#<Z
M@;<Q.JNX@[97@19NA>52V\J0_6NUM<[0[_'[#%?:<:6!*SW!=8]<*RZD8.&G
MTSNXR9G:$XU0T%WV=\&V%./>/KKMLP1>I#-;,HZ+B%1HT;Q@M#SBT)6!^L C
M#SQ0HT%@%G9:D@XM7%"HRW5EF<IL;P:/N4%\-TB@,? \S*&UIGU8,\D4)R0'
M6]P+I83:^R9+-$)G\ E&_>OAE-9A_SI-8,6YJ9BTY(XF*8S' R"9.XDD:T=%
M#/M7DU$/+L;3M'>,C2K[#W4RO&Y0"?VC,<5'$BC0[(/0+7!=*=>HH=OMWI)5
M(Z%_X<U#1-U29Q8D[BAU<#FYBL TXFX<I\L@J*UV),]@YO0>HO$!=+[3VAT<
M3]"]L,N_4$L#!!0    ( (>&I%+ "9T4%0,  &X&   9    >&PO=V]R:W-H
M965T<R]S:&5E=#,Q+GAM;)U546_;. S^*X2QAQ90:UNV$R=( K3=A@U8#\&Z
MNWL8]J#8="S,ECQ);MK[]4?9J9<"6W"X%YNB^7W\2$GTZJ#-=ULC.GAJ&V77
M0>U<MPQ#6]38"GNM.U3TI=*F%8Z69A_:SJ H!U#;A#R*9F$KI HVJ\&W-9N5
M[ETC%6X-V+YMA7F^Q48?UD$<O#@^RWWMO"/<K#JQQP=T?W9;0ZMP8BEEB\I*
MK<!@M0YNXN5MZN.'@+\D'NR)#;Z2G=;?_>)CN0XB+P@;+)QG$/1ZQ#ML&D]$
M,GX<.8,II0>>VB_L[X?:J9:=L'BGF[]EZ>IUD =08B7ZQGW6AP]XK"?S?(5N
M[/"$PQB;9@$4O76Z/8))02O5^!9/QSZ< /+H-P!^!/!!]YAH4/E6.+%9&7T
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
M:K60F\9?F>U/:H@G.EB9QL5?V/:R63*!:N.\60_*Z,%:M_THOPYY>*!0/*?
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
MH-T!W)\K97<3UY7JKY#A;U!+ P04    " "'AJ12X%#QG X%  !\%0  &0
M 'AL+W=O<FMS:&5E=',O<VAE970S.2YX;6RUF-%RFS@4AE]%X^E%.Y,8) $V
M'<<S26BVZ;3;3)/N7NSLA8)E6Q- KB3LY.U7P@3L@&2GW=XD!O3K_!R)[QR8
M;+AXD$M*%7C,LT*>#99*K=Y[GDR7-"=RR%>TT%?F7.1$Z4.Q\.1*4#*K1'GF
M(=^/O)RP8C"=5.=NQ'3"2Y6Q@MX((,L\)^+I@F9\<S: @^<3W]ABJ<P);SI9
MD06]I>K[ZD;H(Z^99<9R6DC&"R#H_&QP#M]?X< (JA%_,;J1.[^!N95[SA_,
MP?7L;. ;1S2CJ3)3$/UO32]IEIF9M(\?]:2#)J81[OY^GOVJNGE],_=$TDN>
M_<UF:GDV& _ C,Y)F:EO?/.1UC<4FOE2GLGJ+]C48_T!2$NI>%Z+M8.<%=O_
MY+%.Q(X !A8!J@7H6 &N!?A805 +@F,%82T(CQ5$M2"J<K]-5I7IA"@RG0B^
M <*,UK.9']5R56J=8%:8G76KA+[*M$Y-S],?)9.L6N53<"XE51)4)P6= 5+,
MP&=&[EFF1U!IKI>Y/O\VH8JP3+[3FN^W"7C[YAUX U@![I:\E%HE)Y[2[DP,
M+ZV=7&R=((N3+T0, 1J= .0CV"._=,L3FFIY5,G]'GGBEG]-U1# V"K_X)9_
M*K,AP+Y5?G6,^;&1PWA?[ND%;585-:N*JOFP9;Z+4NHSLE[)>GG_^:S/@6M%
M<_FO(P9N8N J1F")\0?GLPW+LKZ5WBJC2FG8MIXB&" XGGCKW17M&X9&$=P?
M=M4=!N,8QE$S;,]_T/@/G/XO2*;]%^"&B ='.L)FNO"WI3QJ8D1.R^=IRLM"
M/Z""II2MR7U&^[9JU,E7@*.P/UNC)O3(&?JZ6--"<?'4%W K#7?7<81&_0''
M3<"Q,^"-T-53J*<3L,I(H2H449W9E2YKJL_$N&,B]D/<;R)N3,1.$U^U!:)8
ML0 9U>7K! A3J "?@U)20"I:]GF).UY"\USW68%^2VK_0$;HBC"=A4?=5DA-
M8Y,2KI94Z$(A!#5)LCJJY]ZS9'F X$[M@$Y'=Z18,+T)Z[BZ3=C6C5X#L&,
M1B,#RUX/+>D@.NZ96)$G4GG162%I*DI=I[*V=O5Z0AU/IZ/ LF=@"T;H)N.+
M77/0!>ZZL&^7%F_0S;<[KD@&E&6)JC3M&#/736GO-1ATERX,PK'%84M,&!Y@
MR@MWO<'#;G <^;9]TZ(4NEGJ*%\?:NG>PQ('R!*R12AT,_1/_:+PHL/JC3[J
M\!N'OO6.6Z!"-U$_:G8!#9&45:\%"5VSE,H3<%VD0T=Q@BTL8?S;2B!J,8C<
M&+PD<EGMWM3\,"5A33(-O[[=D]1S[?4.T=B22M2"#[G!=UPA3E /\WQH*8QH
MI[ES(\]5BQ/491KV UO,EFG(S;37EN,$=:D611:HH19JR VUGRS(">HB#(5A
M8+'3$@RY"?8K)3E!7;*%L2U#+=>0FVNOJ,D)ZG(N#B-+6X!:SB$WYQ(ZI\+4
M&$'U1BW['XUNSWB*0F2[_19RR VY7V@'$M1M(4\ABBQU#K5<1*_J(@_:Z':/
MI_;-BEMP8C<XFV51Y/&0!]QM%T_1.+" $[?@Q <ZQO^K*4EPEZUX9'G)P2U:
M\2&T'FY)$MQ%+(2AK97%.R_4/_U&G> ^G-I>ZG#+4^SFZ7$M25+/LE=&QV'T
M\HZ]G>]0YKOD%R(6K)!ZV\^USA^.M'VQ_=2W/5!\57V:NN=*\;SZN:1D1H49
MH*_/.5?/!^9K5_/!=?H?4$L#!!0    ( (>&I%)S" $=& 0  !D4   9
M>&PO=V]R:W-H965T<R]S:&5E=#0P+GAM;+68;6_:.A3'OXH5[44K;22V>>H$
M2!1TM5YU&EK7NQ?37KB)(5:3F-D.K-(^_.PDC7-58A H;]H\G?^QS]_G%Y/)
MGHMG&5.JP.\TR>34BY7:?O1]&<8T);+'MS33=]9<I$3I4['QY590$A5!:>*C
M(!CZ*6&9-YL4UU9B-N&Y2EA&5P+(/$V)>+FE"=]//>B]7OC*-K$R%_S99$LV
M](&JQ^U*Z#._5HE82C/)> 8$74^].?RXP$,34#SQ'Z-[V3@&9BI/G#^;D[MH
MZ@5F1#2AH3(21/_;T05-$J.DQ_&K$O7JG":P>?RJ_D\Q>3V9)R+I@B??6:3B
MJ3?V0$37)$_45[[_1*L)#8Q>R!-9_ 7[\MG1T -A+A5/JV ]@I1EY7_RNRI$
M(P -6@)0%8!.#<!5 "XF6HZLF-:2*#*;"+X'PCRMU<Q!49LB6L^&9<;&!R7T
M7:;CU&P>_LJ99$5)/X"[3)%LPYX2"N924B5!<5_0"%PMJ2(LD=?ZL<>');AZ
M=PW> 9:!;S'/)<DB.?&5'I"1]<,J^6V9'+4D_Q*J'H W[P$*4' @?.$._S=/
M>@ 'A\)]78:Z%JBN!2KT^BUZG[3E8"5HR(I%NJ0[%E+Y7E<E[#GD<2V/"WG<
M(G^;2WU%5C6M:O[C7E\#=XJF\J<C1[_.T7=.89[R/%.'G"CCAD6<Z>W=#,*!
M*=ON0+I!G6[@3/>]Z!*].N8[*G37@T=)UWD"[MF:@BN].%XH$?+ZT'C<PN,R
M$B"0\DS%$D $(O(B'24:UF,>.J5O21+M]=!61#P[Y$:UW*@S5\=UCO%YKB[&
M;UW%PZ#%U9LZW4U'KB[<PJ/*U?'IKL+ @BPXV5?P1S?MAZW@H7%&4*G3AC'0
ME-*(W^EWUU:_B90K;8.?L#/_H243=*.I?054@<TET&]; -"B"F)GOF59);T&
M% WCC"=\PZC493V3D= "#/:[JZ?E%G3SI9V356"SGJ-!:T$M=*";.A>0\H@R
M#,I85UTLS.#H/-]/I":T2(/C[GRV)(-NXCCZYN:-S^-QF\_(4@BY*70!.X\H
MG^ SLM1"T"FV*':65&@V)L247L9L>T%_H\8>"W7F.[+\0FY^M?=W%=CTO?V-
MB2RVD'OC=4%_'U$>'+?=8@^YL==J^XGMC2SOT+ [FRVND!M7[>U=!?[OM=CZ
M7D266LB]$[NDO=W*^+C-EGK(3;TO(J+FUVWXK/E]?E-C2ST<=.8VMM#";FBU
M-W45V'0;M9F-+:JP>]-U04\?41Y6&V!761H_*]VL^R9(1$%&TDLV:-B2#G>W
M0<.65/C<#1I^NT%#;;]CL>45[FQ_=D39P6^_\=W&?#3[3,2&91(D=*VE@MY(
M3U64WZ'*$\6WQ:><)ZXTQXO#F&KWA7E WU]SKEY/S->A^FO@["]02P,$%
M  @ AX:D4D:EXJ33!   41@  !D   !X;"]W;W)K<VAE971S+W-H965T-#$N
M>&ULK5G1;J,X%/T5"\W#C-0IV"80JB12T^Y.YZ%2U,[L/JSVP0$W004[8SO-
M5-J/7T,HAH0XM.*E 7+OX?C8.??:G>RX>)9K2A7XG6=,3IVU4ILKUY7QFN9$
M7O(-9?J;)RYRHO2M6+ER(RA)RJ0\<Y'G!6Y.4N;,)N6SA9A-^%9E*:,+ >0V
MSXEXG=.,[Z8.=-X>/*2KM2H>N+/)AJSH(U4_-PNA[]P:)4ESRF3*&1#T:>I<
MPZL;'Q<)9<1?*=W)QC4HAK+D_+FX^9Y,':]@1#,:JP*"Z(\7>D.SK$#2/'Y5
MH$[]SB*Q>?V&_F<Y>#V8)9'TAF=_IXE:3YVQ Q+Z1+:9>N"[.UH-:%3@Q3R3
MY5^PV\>&H0/BK50\KY(U@SQE^T_RNQ*BD:!QNA-0E8 .$X(3";A**)5S]\S*
M8=T21683P7= %-$:K;@HM2FS]6A25DSCHQ+ZVU3GJ=DWSI-=FF6 L 1\9XJP
M5;K,*+B6DBH)OH(ZX/,M523-Y!?]\.?C+?C\Z0OX!%(&?JSY5NIT.7&59E3@
MNG'U]OG^[>C$VS&XYTRM)?B#)33IR+^QYT-D 7"U%+4>Z$V/.;(BWA-Q"5!X
M 9"'8!<A>_HMC75Z4*9[%CJXGAY<XN%ST_// ]=_]<K=$9'\:T'V:V2_1/;/
M(%^ )5VEC*5LI7\/&6$Q[9K'/5A0@A76\#)#$(6!ENBEJ<YQ&(PB& 5U6(OK
MJ.8ZLG+5P]8_1Z9_#T)0%K\")0B3&2F,H(OL'FW48/$U\H(#JL=!"/LGB 8U
MT:"GJ)0E9Q0-CM\/?03'!S2[PEK"MXB&-='0KNC##_ M7]Y9%M*XAAH/O$2C
M&CGJJ2:)?VU301.0;$4AZX:*E'?Z170D5Q2.NK6"GO%(STID3C)-A($%$<^6
M<<&&Z<*!-8/(8*.A59M7D$W9\ @=K,2.H-$H\DZ(:QP.8BO?.UUHP4+0."U;
M@UOZDL947NAB%%_:!#%&!_VAQ3;&!.W.]"&Q.YS'@X=.VA'E!R/_A-K&H*#=
MH1:"+RFXT0)(FP#&1V XM+C&6.!XR!)5H345@^'8"X_6<5<<\L?HA+;&KJ#=
MK]Y;IN"Q67F'7&TA[0;'N!FRN]E[BE0%=:"IC_P#GMUQ3>W;9(U3(MAWO8+_
M0(^RA8Q1(C3PTD7&U)#=U#Y2NBK(/G-MO _9N[RV?#WK&#+VAT9#2VB<"O7M
MI?I;*SKNEH[K6$?0Z3J&C!,B>TO5EOJ#50T9<T1#MUW(&!D:O/&:H_-F9@UI
M;X^,F6&[F3V^2D5S6RW#QFOPT%T9-F:#^W9EO6H9[FC(_& <'2C:$8:"$)[H
M$G!CUVFWK_=6,GQL71T[KHZHTULN;#P.]]W)GJ]G%53;(,+HL)QUA;7D;U,U
M?HGM[6*U6OM5,FRL$@=#+UQC:]AN:Q^I9!5DKUT8-HZ'[>V@$:]G'</&\' T
M]#&+<2B_;[O5WTSMD,71[I7<D)A.G8V@DHH7ZLQ UTSXQWW9"<OUC4WZ]I;,
MS,,'BYQO7-,?ND7SC<?Y@[=H\PJR=0QVO'7KB.K8NKF-0]N<BE5YEBU!S+=,
M[<]OZZ?U>?EU>4KLFO#]8?L]$;JF2)#1)YWJ789ZOL7^_'I_H_BF/ )><J5X
M7EZN*4FH* +T]T^<J[>;X@7U?Q%F_P-02P,$%     @ AX:D4BGVI^X< @
MA@0  !D   !X;"]W;W)K<VAE971S+W-H965T-#(N>&ULG51-;]LP#/TKA+%#
M"W2QXZ3I4#@&DF8?/10(&G0[##LH-F,+U8<GT7'[[R?)B9<!:P;L8HD2WWLD
M32KKM'FV-2+!BQ3*SJ.:J+F-8UO4*)D=Z0:5N]EI(QDYTU2Q;0RR,H"DB-,D
MF<62<17E63A;FSS3+0FN<&W ME(R\[I$H;MY-(Z.!X^\JLD?Q'G6L HW2$_-
MVC@K'EA*+E%9KA48W,VCQ?AV.?7^P>$KQ\Z>[,%GLM7ZV1OWY3Q*?$ HL"#/
MP-RRQSL4PA.Y,'X>.*-!T@-/]T?V3R%WE\N66;S3XALOJ9Y''R(H<<=:08^Z
M^X*'?*X]7Z&%#5_H>M_9+(*BM:3E >PBD%SU*WLYU.$$D([? *0'0!KB[H5"
ME"M&+,^,[L!X;\?F-R'5@';!<>5_RH:,N^4.1_EGK<N."P%,E7"OB*F*;P7"
MPEHD"^]A49;<UX\)X*IO E_-BQ42X\)>9C&Y,#Q97!PDE[UD^H;D!!ZTHMK"
M1U5B^2<^=N$/.:3'');I6<('9D:0WEQ!FJ3CI\T*+MY=GJ&=#*69!-K)_Y5F
MQ6TAM&T-PO?%UI)Q#?;CC.QTD)T&V>D_9*^ RX9QXR: P G9OU6ZIYH%*C]_
M^SS)XOVI>GS2&Q)-%2; 0J%;17V;#*?#D"WZWOKMWD^HJW/%E06!.P=-1C?7
M$9B^ZWN#=!,Z;:O)]6W8UNZA0.,=W/U.:SH:7F!X>O)?4$L#!!0    ( (>&
MI%(C#DF!' 0  ,82   9    >&PO=V]R:W-H965T<R]S:&5E=#0S+GAM;+V8
M78^;.!2&_XJ%>M%*G0&;[RJ)-$W4[DCM[JC3[EY4O?" $ZP!G+6=27=__=J$
M 08,7:$H-PD?[SE^?6P>C!='QA]%1H@$/XN\%$LKDW+_SK9%DI$"BVNV)Z6Z
MLV6\P%*=\ITM]IS@M HJ<ALY3F 7F);6:E%=N^.K!3O(G);DC@-Q* K,_WE/
M<G9<6M!ZOO"%[C*I+]BKQ1[OR#V1W_9W7)W939:4%J04E)6 D^W2NH'OUJZC
M RK%GY0<1><8Z*X\,/:H3V[3I>5H1R0GB=0IL/I[(FN2YSJ3\O%WG=1JVM2!
MW>/G[!^JSJO./&!!UBS_BZ8R6UJ1!5*RQ8=<?F''WTC=(5_G2U@NJE]PK+6.
M!9*#D*RH@Y6#@I:G?_RS+D0G 'HC :@.0/\WP*T#W*JC)V=5MS98XM6"LR/@
M6JVRZ8.J-E6TZ@TM]3#>2Z[N4A4G5Q\92X\TSP$N4W!;2ESNZ$-.P(T01 IP
M9;CV>D,DIKEXH^Y^N]^ UZ_>@%> EN!KQ@Y"Y1$+6RIKN@$[J6V\/]E (S8^
M8WX-4/@6( =!0_AZ.GQ#$A4>5.'.RW!;%:2I"FJJ@JI\[DB^#[2DDEQ]4C/,
M5)7OGY0>W$I2B!\3K;E-:V[5FC<V!IP)8\U.84$5II_'IQ5R?=?S%O93MS8F
M6>Q[J)&]<.4UKKQ)5S=)<B@..9:J!#<%XY+^B_639S)ZRN1W', H\/VH9]0D
M<Y15LU&_,>I/&OV=2),G?]"8%X51T+,T5/DQ]$*SHZ!Q%$PZVI GQ<>]*IPD
M25:RG.TH$1,S)6P2AQ>8EU'36C1O7D;#<0Q=%_:'VR0+4# RW''C*C[;O(R'
M#CPT?( ,,C<,?<]L%#HM6YTY,[..ZK;G.G'8=V6213Z$(ZXZQ(>3KKYRG!)0
MXF)R2L*6E? 2L(0M+>%,7-9QW8)%T''Z936I@A%8PI:6\'RXA$,0AM[@\3&I
MW, =,=K2$L[")1R2,(A0W])0%,;QB*.6EG :E^MJF4.X6A;F5<U$1O>3<[/E
M);P$,&%+3#@3F7 (0Q_Z?M@OL$&&O"@:*7'+3'@^:,(A#ETOZ@QS;=4@<]UP
MQ"IJH8EF01,-:0B#8+#$,,EB")T15RTTT30T_^ IT1\,R:-ZF4^M,#M+S$M@
M$[781#.QB89 A''0'VZ#"B$TLE!"+3;1^;")3.O'N/\(F52Q,S8!6FRB6=A$
M!B+VJ6G0N*.5:ZF)IJEY6U[M.4N($(J;@F">9-5'7'I:?*I/;3DU;UJ$HDL@
M%+4(13,1BH9L] 9O]U^(7GIJ\8G.AT\TY.+ Y)3DY2=DBTUW%C;KJ&"R:+\0
MG1S9G4T&O<.C/MEWM!0@)UL5Y5R'JCO\M&ER.I%L7^T[/#"I7N_584;4TI-K
M@;J_94P^G^BMC&;K:O4?4$L#!!0    ( (>&I%)>%,)[E ,  .\+   9
M>&PO=V]R:W-H965T<R]S:&5E=#0T+GAM;+U6VV[;.!#]%4+H0PNXD:B["]N
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
M^Z4IU]W;[N[+IBF7W<>%S-0-1FN@_OY0ELW^2_L"O<,;$Z__!E!+ P04
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
M^$@-H9W)0FJ-&FXQ9P83,!(^27&4H.:I<"=;./;G:!C/]0&QW=_-87_O /:
M"_B<R5(3LQ[[AB*RNORX43^MU8=;U/?A6@J3:?@@$DQ>XWW*1)N.<)..:;B3
M\)JI8PA/#R$,PMX[>F;_ A\Y>+!#3K^M3M_Q#;;PO:124Y8-I;;-,M-PB4G*
M1?HJR[^ NIMZ5P ^QQD3*0(]]8JI!&)*E:)G8XT6,F;N&<FE*RWLV[(>4%5C
MF0K^DQS09<?]CF &;3 #%TS_[\$<0J?OOB[($*X,%OK;#C?#ULWP_^;LO;:K
M79PX%W80KJ->.!J-_76W%_XT.NKUAJU1K=[OO,T"5>I&EJ9BE,+4?=F>ME/Q
MW V#-^=3FI;U<'NAJ4<M=5UJ7V>.2Z(,CD])F*K'5[TQ<N4FP*,T-$_<,J.)
MC\H:T/U22K/96 ?M?TCT&U!+ P04    " "'AJ12/ X!<X$#  "F"P  &0
M 'AL+W=O<FMS:&5E=',O<VAE970U,2YX;6S%5MMNVS@0_96!T(<4B*.++W$+
MVT#B-%L#+39(MMV'8A\8:2P1I4@O2=G9_?H=4K+LV(I1=('TQ1:IF3-SSE##
MF6R4_FX*1 M/I9!F&A36KMZ'H4D++)FY4"N4]&:I=,DL+74>FI5&EGFG4H1)
M%(W"DG$9S"9^[T[/)JJR@DN\TV"JLF3ZGVL4:C,-XF"[<<_SPKJ-<#99L1P?
MT'Y9W6E:A2U*QDN4ABL)&I?3X"I^/X\'SL%;?.6X,7O/X*@\*O7=+1;9-(A<
M1B@PM0Z"T=\:YRB$0Z(\_FY @S:F<]Q_WJ+?>O)$YI$9G"OQ)\]L,0W& 62X
M9)6P]VKS$1M"0X>7*F'\+VP:VRB M#)6E8TS95!R6?^SIT:(/0?"Z79(&H?D
MT&'P@D._<>A[HG5FGM8-LVPVT6H#VED3FGOPVGAO8L.E*^.#U?26DY^=W3*N
MX2L3%0*3&=R@YFOFE(6%-%975#%KH >+<D6*@UH"J4?:2/CPE!9,YKCU\4YS
M):TF0T.[AJR8Q0R8@3DS!=S2F8&/F.5HX.P&+>/"O"7L+2)N$>ET;IC.(&W1
M>@=X!:%PF0-ODR23+P\W</;F+;RA;?BC4)4A2F826M+)L0W31I/K6I/D!4WZ
M\)D"%P8^R RSY_XAZ=N*G&Q%ODY. GYF^@*2RW-(HB3NR&?^(^YC[QZ=2*??
MUKSO\?HOX'47^1Q^HZ\>SCXI0U7Y]HF<8&&Q-'^="#EH0PY\R,$+(:]*54E_
M?/:#W&.J<LG_I9K2YE6:5F4E?(E_GR^ /O)=IEU5K$..?$C7KM:SWC 93<+U
MOK0=1OW6Y!F78<ME^'-<!#.&+SFEO]2J/.+#I54D>*K*3C9UT.%>HOU1<D#F
MV*87C^-N.J.6SN@DG;DRGHS&-<H*S8EJ7[:0EZ]UP,9MR/&O*,KX2/!D&!T4
MY=BF%R=1=U'>M73>G:1SCP:93@O?E#.JC% K)^()I>)HU_*CURI/O'?/Q+^B
M0$W49Y_-88$Z;.BSZ2Y0G.P()2<)/=#H05?0.>0H43/A2\4RNJ,Y:=K1M)['
MV37K^-6Z=;QKU_%/]NO_6:WC;CP^['$=-KW!8<L.]R:>$G7N!T%# P-E7=_+
M[6X[;%[Y$>M@_]H-H7Z2VL'4$RS=NC1B&!"X),CHXI+.CZZ'PGIAU<K/58_*
MTI3F'PL:I%$[ WJ_5,IN%RY .YK/_@-02P,$%     @ AX:D4EKSL<BL @
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
M.]P^#"O6=?NLV$PL5+8R24Y:X'[\4;)CI[?$R$L^.)(LD@\?BZ0X7$OUHE,
M0UXSD>N1EQJS_.C[.DXA8_I&+B''-W.I,F9PJA:^7BI@B1/*A!\&0<_/&,^]
M\="M/:KQ4!9&\!P>%=%%EC'U-@4AUR./>IN%[WR1&KO@CX=+MH G,,_+1X4S
MO]:2\ QRS65.%,Q'WH1^G(9.P.WXR6&MM\;$NC*3\L5.OB0C+["(0$!LK J&
M?RNX R&L)L3QNU+JU3:MX/9XH_VS<QZ=F3$-=U+\XHE)1][ (PG,62',=[G^
M!RJ'(JLOED*[)UE7>P./Q(4V,JN$$4'&\_*?O59$; ET^GL$PDH@=+A+0P[E
M/3-L/%1R393=C=KLP+GJI!$<S^U7>3(*WW*4,^,G(^.75(H$E/[[KT%(^Y_(
MP^^"FS?"\H2XU]=3=#LA=S+#LZ"98_.Z?$6^+=UT8LFU0A?W8!@7^A)W5'J^
MY#'DEGOR*%A./A"?Z)0IT(3GY#GG1E_A(HY_I++0:%4/?8.N68!^7+DQ+=T(
M][C1(5]E;E)-'O($DO?R/E)2\Q)N>)F&K0J_,G5#POX5"8.0/C_=DXL/EPWR
M\MEBIE/3WW%F.GO,E/1I\JTPVJ#K/%^T:.W66KM.:W>?UD;;%9G!@N<Y#HF<
MDR4H+A-R@6R7/ER2?\DN;TJ.2C.1,V/C>S6F02\(@J&_V@$OJN%%[? JI^$5
M5,SMT3H43_0'GNLHV(NG5^/I'4X7X*D_GJC>'\"B_3SU:US]5EP_01LDQ\8A
MO"XQC>'$2++"Y8.!]8\!-JB!#5J!/90?CLT$' QD< R0VQK(;6OX_'))%VF9
MK$!A$2$5,DPUBL?0$DHT:!)D<'XP)5((IK1=*CFP9#3Y8F="*\T.MA@9W'2B
MW830K7Q.3PBN4_!5A:/S#F"WNP=@V  ,SXFV4Y"&NY"&_=OMWQ[83:*FG;."
M\13<G=-Q-Z6 MM>"_\?J*3B[.T[J83";DD"CUDB>) FW!Y<)<L]U+*0NVBLL
M;;([/2*]KS<9@U490X&]N]J(CO$&H?"66" &P>>PDXIV4Y22K+R'4)*PMS;X
M31&@)U>!\]UI-WV$.TWIH ?7CO/AMYLZ GY3<.CMX8>)+18*%LP WEZ-XMBJ
MQ&3%1 $VI'8"+I7WMB(I#/J#0;BG#H9-E0K;JU1U2F#G*3D:9V4L.AAG4Y["
M]O+T[O,?CXL>R)^_U1%EH!:N[]-XJ(K<E,U1O5KWEI.RHVJVEXTI=@)8\S41
M,$?1X*:/K*BRURLG1BY=?S63!KLU-TRQ/P9E-^#[N91F,[$&ZHY[_!]02P,$
M%     @ AX:D4HLMUSS& @  <P8  !D   !X;"]W;W)K<VAE971S+W-H965T
M-3@N>&ULG95M:]LP$,>_RN&-T<(2)\XC71)(VHX65@@-6U^,O5#L<RRJ!U>2
MXP;VX2?)CINN36![8^OA[G^_.UGG22G5H\X0#3QS)O0TR(S)+\)0QQERHMLR
M1V%W4JDX,7:J-J'.%9+$.W$61IW.,.2$BF V\6M+-9O(PC J<*E %YP3M5L@
MD^4TZ ;[A7NZR8Q;"&>3G&QPA>9[OE1V%C8J">4H-)4"%*;38-Z]6 R=O3?X
M0;'4!V-PF:RE?'23VV0:=!P0,HR-4R#VM<5+9,P)68RG6C-H0CK'P_%>_:O/
MW>:R)AHO)7N@B<FFP3B !%-2,',ORQNL\QDXO5@R[9]0UK:= .)"&\EK9TO
MJ:C>Y+FNPX%#[YA#5#M$GKL*Y"FOB"&SB9(E*&=MU=S I^J]+1P5[E!61ME=
M:OW,;&5D_)A)EJ#2GSZ,H^[H"UP_%=3L@(@$_'9K8=-.X%)R^REHXJO9@NO5
M<@ES5U1G?':%AE"FS]T.SYG<(8)VWI 7*LZL N2,B$EH++6+'<8UX:(BC(X0
M]N!."I-IN!8))J_]0YMMDW*T3WD1G12\(ZH-T>@S1)VH^Q%"T!E1J*OG"?U>
M4]*>U^\=*ZD3:JW?UFRN%!$;M)^T@?4.#NV69.>7YR51"?S\9B7AUB#7OTX
M]1N@O@?JGP+20+4N;*@S*NJ,S^$WO)=U5<1*<^ UW=7>SJ)H/!KW)^'V'99!
MPS(XR?+@KXG%(%M4]M9#CJJ"./A.%(W1<R:2,:+TB]'Y>Z15Q/$KTG;W".BP
M 1W^+VA"=2P+>UJIDAQ,AI 2JF!+6($@4Y"%@EAR;H^\N@%VX*P28OR^.P@B
M_BG%X9L46]UQ>]3[*\?PH!%P5!O?[C1XVJHG-*M-1YU7C>3%O&K']I9LJ-#
M,+6NG?;(5EE5+:Z:&)G[MK*6QC8I/\SL7P&5,[#[J91F/W$!FO_,[ ]02P,$
M%     @ AX:D4M_ZFWLF P  5@H  !D   !X;"]W;W)K<VAE971S+W-H965T
M-3DN>&ULS59=;]HP%/TK5E9-G42;+R#0 1+03JNT2JBTV\.T!T,NQ&IB4]M
MNU^_:R<$RD>TAS[TA?CCGI-S[R'V[:R%?%()@"8O6<I5UTFT7ERYKIHFD%%U
M*1; <6<F9$8U3N7<50L)-+:@+'4#SVNZ&67<Z77LVDCV.F*I4\9A)(E:9AF5
MKP-(Q;KK^,YFX9[-$VT6W%YG0><P!OVX&$F<N25+S#+@B@E.),RZ3M^_&OJA
M =B(GPS6:F=,3"H3(9[,Y#;N.IY1!"E,M:&@^%C!$-+4,*&.YX+4*=]I@+OC
M#?LWFSPF,Z$*AB+]Q6*==)V60V*8T66J[\7Z.Q0)-0S?5*3*_I)U$>LY9+I4
M6F0%&!5DC.=/^E(48@> /,<!00$(]@'U$X"P -C*N;DRF]8UU;37D6)-I(E&
M-C.PM;%HS(9Q8^-82]QEB-.]L1;3IT2D,4CU^5,K\*.OY.9YR?0KH3PF=OMB
M@'6*R5!D^.=1U);_XO36^35HRE+U!8,>Q]?D_.P+.2.,DX=$+!6RJHZK4;H1
MX$X+F8-<9G!"9DCN!->)(C<\AO@MWL64R[R#3=Z#H)+PCLI+$D0U$GB!?T3/
M\'_@+0OW*N2$I0VAY0M/V9!0"1<36\P1?<7O1).^E)3/P8QKY.;%%!AWC2M#
MNF":INPOQ#72S\02HW__0$IRJR%3?RH$U4M!=2NH?D+0@\ 7$&4]SF5-=SP^
M9F#.U[1\YO!8]2(OBCKN:K>JAT&-9A"606^D-DJIC4JI0Z$T$3,\5%; EZ J
MLF^6E,V/84=4"HK>V8Z<K[%3:3\,&WMV' :UP^BX&ZU2::M2Z3THH'*:V,K$
M:$DJ%J9F%45HE]3MC^&*[VU/3^^=?2D(WQC3;+7WC#D650_;QZWQ=PY[OU+N
M&*]+QN<U,@<.$I6;0M$8[Q6FM*3F1JTJ2[!]3_!!G-H>L'[XWDZ%!X=5W6N$
M^TX=1H5!??\C<G=NZ SDW#8N"B5@KOFE5:Z6S5'?M@1[ZP/3--F;?TN3=UQX
M)<T95R2%&5)ZEQ'^>63>Q.03+1:V#Y@(C5V%'2;8^($T ;@_$T)O)N8%92O9
M^P=02P,$%     @ AX:D4HQ</:)' P  ^PL  !D   !X;"]W;W)K<VAE971S
M+W-H965T-C N>&ULS59M;]LV$/XK!ZT86F")1/I%=FL;L),4#; "1K*T&(9^
MH*6S140B59**X_WZD90BNTNL;$ #Y(O$MWONN>.CTTVV4MWJ#-' ?9$+/0TR
M8\KW8:B3# NF3V6)PNZLI2J8L5.U"76ID*7>J,A#&D7#L&!<!+.)7UNJV416
M)N<"EPIT511,[1:8R^TT(,'#PA7?9,8MA+-)R39XC>:F7"H["UN4E!<H-)<"
M%*ZGP9R\7Y#8&?@37SAN]<$87"@K*6_=Y#*=!I%CA#DFQD$P^[K#,\QSAV1Y
M?&] @]:G,SP</Z!_],';8%9,XYG,O_+49--@%$"*:U;EYDIN/V$3T,#A)3+7
M_@G;YFP40%)I(XO&V#(HN*C?[+Y)Q($!'1PQH(T!];QK1Y[E.3-L-E%R"\J=
MMFANX$/UUI8<%^Y6KHVRN]S:F=FUD<EM)O,4E?[UEQ$E\0>X^%YQLP,F4O#;
M)PL;=@IGLK!:T,QG\P1NA,)$;@3_^]][9U(;#6_/T3">ZW?P!KB /S)9:0NI
M)Z&QO)WW,&DX+FJ.] C''GR6PF0:+D2*Z8_VH8VW#9H^!+V@G8"?F3H%&O\&
M-*+DYOH<WKYYUP';:W/9\["]8[G,F,*3U>-DS95B8H-6S 96.S@\MV0[OSS?
M,I7"7[];2+@T6.AO'83Z+:&^)]0_0NB'*[JX=X3PJ?37*$./XC[CNUEO2"B9
MA'=/.!^TS@>=SN=WJ.QW[?TFQA*XJKGXC"Q1<9DZ7?R)3#VIB6YT CMK"(1
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
MTANCYGHS&&TV5I5^&%DHBW+[Y1J'2=#. ,^72MFGC9MOFO%T_@M02P,$%
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
MH:&?8OE4VS?;B9$;UWI6TN"Q=\,:/S6@; "^7TMI#A,KT'^\\M]02P,$%
M  @ AX:D4BKP:LZR @  5@L  !D   !X;"]W;W)K<VAE971S+W-H965T-C8N
M>&ULS9;K:]LP$,#_%6$8;-#$EITWB:&/C14Z%I(]/I1^4.QS+&I;GJ0TZ7\_
M27%4%UJUL$?SQ=;K[GYW.OMNNF7\5N0 $NW*HA(S+Y>RGOB^2'(HB>BR&BJU
MDS%>$JFF?.V+F@-)C5!9^&$0#/R2T,J+IV9MSN,IV\B"5C#G2&S*DO#[,RC8
M=N9A[["PH.M<Z@4_GM9D#4N0W^LY5S/?:DEI"96@K$(<LIEWBB=G.-("YL0/
M"EO1&B/MRHJQ6SVY3&=>H(F@@$1J%42][N <BD)K4AR_&J6>M:D%V^.#]D_&
M>>7,B@@X9\5/FLI\YHT\E$)&-H5<L.UG:!SJ:WT)*X1YHFUS-O!0LA&2E8VP
M(BAIM7^371.(E@#N/2,0-@*AX=X;,I071))XRMD6<7U::=,#XZJ15G"TTK>R
ME%SM4B4GXP7<0;4!U$$+T)=(JS6: S?7726 OJX*NB8F@.\O0!):B ]37RK+
M6MY/&BMG>ROA,U:^$-Y%X? $A4&('XO["MA2AY8Z-/IZ;NJ3%Z%/T,==K1(
M4O2-EOH<R]!2;8F,)/L#2TFX1"IX@*Y/=U3<3 QE)X@ZX<C!&EG6R+!&_YP5
M75\IW>A20BEN'&0]2]9[712Y):M;9*Q%IM83J*3Z3I^Z?+>98:_;#]XY>/N6
MM_^W>.$026DC*1[=NA*D+'W*&3?#&)6LDKEPN#.P[@S>/(EQV D'#M:A91T>
M61*/+-GH_R2QVPP>= ?.)!Y;WO$1)+&; :-[(-SA# X>RD?PQDD<=0+U,W95
M#=PJ=OC(TA@_E#3\RIKVIXG\@IU1=^Q,9/Q0V'!T!*GLAM!=ZT34)(&9I]I2
M ?P.O!@]Y9_?ZI)TQZF:DC6M!"H@4YJ#[E#]^?F^B=M/)*M-X[1B4K5A9IBK
MQA>X/J#V,\;D8:)[,=M*Q[\!4$L#!!0    ( (>&I%)P00U_'P(  (8$   9
M    >&PO=V]R:W-H965T<R]S:&5E=#8W+GAM;'U436_;, S]*X)/&[#6CI.N
M0^$82-H-ZZ%;D&#;8=A!MFE;J#X\B4ZZ?S]*=KP46'*Q2(GO\9&FE!V,?78M
M +(7);5;1BUB=Q?'KFQ!<7=M.M!T4ANK.))KF]AU%G@50$K&:9*\CQ47.LJS
ML+>Q>69ZE$+#QC+7*\7MGS5(<UA&L^BXL15-BWXCSK..-[ #_-9M+'GQQ%()
M!=H)HYF%>AFM9G?KA8\/ =\%'-R)S7PEA3'/WGFLEE'B!8&$$CT#IV4/]R"E
M)R(9OT?.:$KI@:?VD?U3J)UJ*;B#>R-_B K;9?0A8A74O)>X-8?/,-9SX_E*
M(UWXLL,8FT2L[!T:-8))@1)Z6/G+V(<30#H[ TA'0!IT#XF"R@>./,^L.3#K
MHXG-&Z'4@"9Q0ON?LD-+IX)PF'_MP'(4NF$[:*C9Z!C7%?NH$6QGA8,K2@_L
M40__WS?RBJVJ2GB3RU<';QX N9#N;18C2?,)XG*4L1YDI&=DS-F3T=@Z2EQ!
M]1H?4TE37>FQKG5ZD?")VVN6WKYC:9+.W%#:!=KYU*YYH)V?H1V;Q+;0&1O:
M]G-5.+0T7+\NT"\F^D6@7YRA_]*K BPS-<V[3\ +"6Q4[_[7U8'N)M#Y^[?/
MTRS>GRJ(3V9#@6W"#7"L-+W&84RFW>F2K8;9^A<^W%#J:2.T8Q)J@B;7MY37
M#E,_.&BZ,&F%09K;8+;T4(#U 71>&X-'QR>8GI[\+U!+ P04    " "'AJ12
M@MOVJ00$  "_$0  &0   'AL+W=O<FMS:&5E=',O<VAE970V."YX;6R]6&V/
MVC@0_BM6U)-:Z9;$SOL*D+IL[[K2K;J"Z_5#U0\!!HB:Q#G;+%WI?OPY3H@#
M)('N:OL%8F>>F6?&PV/LX8ZR[WP#(-"/-,GXR-@(D5^;)E]L((WX@.:0R3<K
MRM)(R"%;FSQG$"T5*$U,8EF>F49Q9HR':NZ!C8=T*Y(X@P>&^#9-(_9T PG=
MC0QL[">F\7HCB@ES/,RC-<Q ?,X?F!R9M9=EG$+&8YHA!JN1\1Y?3XA? )3%
M/S'L>.,9%:G,*?U>#.Z6(\,J&$$""U&XB.37(TP@20I/DL>_E5.CCED F\][
M[W^HY&4R\XC#A"9?XJ78C(S 0$M81=M$3.GN(U0)N86_!4VX^D2[RM8RT&++
M!4TKL&20QEGY'?VH"M$ 2#_M %(!R#' Z0#8%<!6B9;,5%JWD8C&0T9WB!76
MTEOQH&JCT#*;."N6<2:8?!M+G!A_RH%%(L[6: 9KN3R"HRA;H@^9 ):SF,.5
M# _H+BL[IJC\%=*@*7!9+X[F3WL\>GL+(HH3_DX:?I[=HK=OWJ$W*,[0WQNZ
MY=(Y'YI",B_BFXN*Y4W)DG2PM-$]S<2&2UY+6![B39EQG3;9IWU#>AW>1VR
MB/\[(A;!+7PFE\ #!;=ZZ-CU*MC*G]WA;U^[*>24J<(V"_[U+VF.[@2D_%M/
M,*<.YJA@3D>P*3Q"MH7692B1GD(6"O XQH'GV=[0?&Q6I\7,LWS7KLT.B+DU
M,;>7V)^,<HYR1E>Q:"/GGD3U/=\ZYG9JY?EV:+53\VIJW@74I-"MXZR-6C_:
MP0-L_=;69F=QX3'N@+Y?T_=['3TP.@<TB=CQC^_ 6U!["UZ_6\,Z6/CL;@U/
MV] -@C XZH@6,]OQL=O>$MC2TFGU4IL]\2++GB1Q0X;QZ]<4$QV./+NJ%=1M
MU(OXOGU<U38SSVJ8'5+34HCM7FIZ<^'['>D_=%D#8RV!V/D%Y=;"AON5K;?<
M[DD=6[NXS:ZOC;6TX4NTK5MV*_B![EIV(V[%[]1,[@E.QYZ M73A?NTZ)[UG
MX(XSL-NU]QS0/17MPQ2T7N+@YUOZ O70&HG#UV]GHH6/] M?7SM74.^,>K29
M=:L'T3I*\(N:N8(?;@9N&![3:S.S;:>#GM9=TJ^[YYKY#-P)!U9[,Y\!NGA
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
MTUWAL7=89,=)0H_(!K,&XN9'D4=0P0B*8Q+8\F$C08[)=--W[/52P5MC3<N
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
MPE-Z+=OZRHG^9[OEJBC[71'+3=N>4MHG\\'*YFDG]-,N[C?_ %!+ P04
M" "'AJ12VW:P<3$"  ")*0  &@   'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR
M96QSS=I+;J- %(7AK5@L(+CNBZ059]233*-L #GEAV(;1-%*LONVG(%]4 ]Z
M$G%&J$!<_M$' AY?\J$=]]VI[/9]67P>#Z>RJG;CV/^JZ[+>Y6-;[KH^G\Y'
M-MUP;,?S<MC6?;M^;[>YEN4RZN%V1O7T>#MS\?K5Y_^9V&TV^W7^W:W_'/-I
M_,?@^J,;WLLNY[%:O+;#-H^KJOX\7'>7^K))=^?)U>+Y;54-SV^IJN<.$@B2
M^8,4@G3^((,@FS_((<CG#PH(BOF#&@AJY@^ZAZ#[^8,>(.AA_J"T1!F7!$D3
MK FT3LAU(O Z(=B)0.R$9"<"LQ.BG0C43LAV(G [(=R)0.Z$="<"NQ/BG0CT
M%M1;"/06U%L(]);)PS:!WH)Z"X'>@GH+@=Z">@N!WH)Z"X'>@GH+@=Z">@N!
MWH)Z"X'>BGHK@=Z*>BN!WHIZ*X'>.GE90J"WHMY*H+>BWDJ@MZ+>2J"WHMY*
MH+>BWDJ@MZ+>2J"WH=Y&H+>AWD:@MZ'>1J"WH=Y&H+=-7G83Z&VHMQ'H;:BW
M$>AMJ+<1Z&VHMQ'H;:BW$>CMJ+<3Z.VHMQ/H[:BW$^CMJ+<3Z.VHMQ/H[9./
ME01Z.^KM!'H[ZNT$>COJ[01Z.^KM!'H'ZAT$>@?J'01Z!^H=!'H'ZAT$>@?J
M'01Z!^H=!'K'Y&<3 KT#]0X"O0/U#@*] _4. KT;U+OY2;W+^'7(Y=KSO<;K
M_R35X_G<?+W\9?F]$^\7S07G^K:B//T%4$L#!!0    ( (>&I%*DR,-W^@$
M +0H   3    6T-O;G1E;G1?5'EP97-=+GAM;,W:RT[#,! %T%^ILD6-ZR</
MT6Z +;#@!TPRI5&3V+)=*'^/DP(2""I0D;B;1JWMN1./=%8]OWOV%"?;KNWC
MO%BEY,\8B]6*.AM+YZG/*TL7.IORU_# O*W6]H&8F,T,JUR?J$_3--0H%N>7
MM+2;-DVNMOGGV+A^7@1J8S&YV&T<LN:%];YM*IOR.GOLZT\IT]>$,I\<]\15
MX^-1WE"P+Q.&E>\#7L_=/%((34V36QO2M>WR+K9M64S/+<5R?XDO>G3+95-1
M[:I-EX^4T0>R=5P1I:XM=T6/]B>G?,.T^^0'YX]E]@7FG;?!^9@G%NCW<6\C
M&4Y/?2Y$(37[7_$],9<^^/UHF'9-]0^S\_4^N; >YQ'9^#C\CC_.^+W^+_L0
M('U(D#X42!\:I \#TL<Q2!\G('V<@O3!9RB-H(C*44CE**9R%%0YBJH<A56.
MXBI'@96CR"I09!4HL@H4606*K )%5H$BJT"15:#(*E!D%2BR2A19)8JL$D56
MB2*K1)%5HL@J4625*+)*%%DEBJP*15:%(JM"D56AR*I09%4HLBH4616*K I%
M5H4BJT:15:/(JE%DU2BR:A19-8JL&D56C2*K1I%5H\AJ4&0U*+(:%%D-BJP&
M15:#(JM!D=6@R&I09#4HLA[_IZSWSJW_.'Y\EIUM^K=\-OY9<?$"4$L! A0#
M%     @ AX:D4@=!36*!    L0   !               ( !     &1O8U!R
M;W!S+V%P<"YX;6Q02P$"% ,4    " "'AJ12C"XML^X    K @  $0
M        @ &O    9&]C4')O<',O8V]R92YX;6Q02P$"% ,4    " "'AJ12
MF5R<(Q &  "<)P  $P              @ ', 0  >&PO=&AE;64O=&AE;64Q
M+GAM;%!+ 0(4 Q0    ( (>&I%(AWYLT. 4  %T5   8              "
M@0T(  !X;"]W;W)K<VAE971S+W-H965T,2YX;6Q02P$"% ,4    " "'AJ12
M$I:U_<D&  #;&P  &               @(%[#0  >&PO=V]R:W-H965T<R]S
M:&5E=#(N>&UL4$L! A0#%     @ AX:D4@\+EXCD @  - @  !@
M     ("!>A0  'AL+W=O<FMS:&5E=',O<VAE970S+GAM;%!+ 0(4 Q0    (
M (>&I%+\ZZK0E00  +T0   8              " @907  !X;"]W;W)K<VAE
M971S+W-H965T-"YX;6Q02P$"% ,4    " "'AJ12QS,+=BT#   D"0  &
M            @(%?'   >&PO=V]R:W-H965T<R]S:&5E=#4N>&UL4$L! A0#
M%     @ AX:D4FRVA5DL!@  :!T  !@              ("!PA\  'AL+W=O
M<FMS:&5E=',O<VAE970V+GAM;%!+ 0(4 Q0    ( (>&I%(KK7,."0@  -LA
M   8              " @20F  !X;"]W;W)K<VAE971S+W-H965T-RYX;6Q0
M2P$"% ,4    " "'AJ12?#O/0N\'  !4%   &               @(%C+@
M>&PO=V]R:W-H965T<R]S:&5E=#@N>&UL4$L! A0#%     @ AX:D4@P>$\^2
M @  M04  !@              ("!B#8  'AL+W=O<FMS:&5E=',O<VAE970Y
M+GAM;%!+ 0(4 Q0    ( (>&I%*F/F<.R (  ,D%   9              "
M@5 Y  !X;"]W;W)K<VAE971S+W-H965T,3 N>&UL4$L! A0#%     @ AX:D
M4F2X)!WC#0  +34  !D              ("!3SP  'AL+W=O<FMS:&5E=',O
M<VAE970Q,2YX;6Q02P$"% ,4    " "'AJ12B/,HD 4%  !D"P  &0
M        @(%I2@  >&PO=V]R:W-H965T<R]S:&5E=#$R+GAM;%!+ 0(4 Q0
M   ( (>&I%)(.TO<R@(  .0%   9              " @:5/  !X;"]W;W)K
M<VAE971S+W-H965T,3,N>&UL4$L! A0#%     @ AX:D4O$+VBD,#P  $R\
M !D              ("!IE(  'AL+W=O<FMS:&5E=',O<VAE970Q-"YX;6Q0
M2P$"% ,4    " "'AJ12_POL&$T$  """0  &0              @('I80
M>&PO=V]R:W-H965T<R]S:&5E=#$U+GAM;%!+ 0(4 Q0    ( (>&I%+5438>
M#P,  (T&   9              " @6UF  !X;"]W;W)K<VAE971S+W-H965T
M,38N>&UL4$L! A0#%     @ AX:D4L29A\"T!@  >!   !D
M ("!LVD  'AL+W=O<FMS:&5E=',O<VAE970Q-RYX;6Q02P$"% ,4    " "'
MAJ12#'>Q0+8"   Z!@  &0              @(&><   >&PO=V]R:W-H965T
M<R]S:&5E=#$X+GAM;%!+ 0(4 Q0    ( (>&I%(5-WB*<0(  )@%   9
M          " @8MS  !X;"]W;W)K<VAE971S+W-H965T,3DN>&UL4$L! A0#
M%     @ AX:D4F%I'Z5L!   UPD  !D              ("!,W8  'AL+W=O
M<FMS:&5E=',O<VAE970R,"YX;6Q02P$"% ,4    " "'AJ12\+&F (@%  ">
M#0  &0              @('6>@  >&PO=V]R:W-H965T<R]S:&5E=#(Q+GAM
M;%!+ 0(4 Q0    ( (>&I%*(?W<)E 8  %0/   9              " @96
M  !X;"]W;W)K<VAE971S+W-H965T,C(N>&UL4$L! A0#%     @ AX:D4JG[
MZVEE"@  @!L  !D              ("!8(<  'AL+W=O<FMS:&5E=',O<VAE
M970R,RYX;6Q02P$"% ,4    " "'AJ12# %[GK("  "9!0  &0
M    @('\D0  >&PO=V]R:W-H965T<R]S:&5E=#(T+GAM;%!+ 0(4 Q0    (
M (>&I%(]DN1CB (  #$%   9              " @>64  !X;"]W;W)K<VAE
M971S+W-H965T,C4N>&UL4$L! A0#%     @ AX:D4N.6[@N2!   I@L  !D
M             ("!I)<  'AL+W=O<FMS:&5E=',O<VAE970R-BYX;6Q02P$"
M% ,4    " "'AJ12QX"..C(%   ,#0  &0              @(%MG   >&PO
M=V]R:W-H965T<R]S:&5E=#(W+GAM;%!+ 0(4 Q0    ( (>&I%*_=!LTV@(
M .4%   9              " @=:A  !X;"]W;W)K<VAE971S+W-H965T,C@N
M>&UL4$L! A0#%     @ AX:D4L&WV^$(!P  G!8  !D              ("!
MYZ0  'AL+W=O<FMS:&5E=',O<VAE970R.2YX;6Q02P$"% ,4    " "'AJ12
MVPHD'9 "  !M!0  &0              @($FK   >&PO=V]R:W-H965T<R]S
M:&5E=#,P+GAM;%!+ 0(4 Q0    ( (>&I%+ "9T4%0,  &X&   9
M      " @>VN  !X;"]W;W)K<VAE971S+W-H965T,S$N>&UL4$L! A0#%
M  @ AX:D4AU^HN97!0  &@X  !D              ("!.;(  'AL+W=O<FMS
M:&5E=',O<VAE970S,BYX;6Q02P$"% ,4    " "'AJ12&*E_D]T"  !D!@
M&0              @(''MP  >&PO=V]R:W-H965T<R]S:&5E=#,S+GAM;%!+
M 0(4 Q0    ( (>&I%)TD[6$6@,  )H'   9              " @=NZ  !X
M;"]W;W)K<VAE971S+W-H965T,S0N>&UL4$L! A0#%     @ AX:D4M)&ABM;
M!0  70P  !D              ("!;+X  'AL+W=O<FMS:&5E=',O<VAE970S
M-2YX;6Q02P$"% ,4    " "'AJ12B (>AT(#  #5#   &0
M@('^PP  >&PO=V]R:W-H965T<R]S:&5E=#,V+GAM;%!+ 0(4 Q0    ( (>&
MI%*AT$@9; (  #4&   9              " @7?'  !X;"]W;W)K<VAE971S
M+W-H965T,S<N>&UL4$L! A0#%     @ AX:D4FJR:P_B @  D0@  !D
M         ("!&LH  'AL+W=O<FMS:&5E=',O<VAE970S."YX;6Q02P$"% ,4
M    " "'AJ12X%#QG X%  !\%0  &0              @($SS0  >&PO=V]R
M:W-H965T<R]S:&5E=#,Y+GAM;%!+ 0(4 Q0    ( (>&I%)S" $=& 0  !D4
M   9              " @7C2  !X;"]W;W)K<VAE971S+W-H965T-# N>&UL
M4$L! A0#%     @ AX:D4D:EXJ33!   41@  !D              ("!Q]8
M 'AL+W=O<FMS:&5E=',O<VAE970T,2YX;6Q02P$"% ,4    " "'AJ12*?:G
M[AP"  "&!   &0              @('1VP  >&PO=V]R:W-H965T<R]S:&5E
M=#0R+GAM;%!+ 0(4 Q0    ( (>&I%(C#DF!' 0  ,82   9
M  " @23>  !X;"]W;W)K<VAE971S+W-H965T-#,N>&UL4$L! A0#%     @
MAX:D4EX4PGN4 P  [PL  !D              ("!=^(  'AL+W=O<FMS:&5E
M=',O<VAE970T-"YX;6Q02P$"% ,4    " "'AJ12L/BRR/0"  !P"   &0
M            @(%"Y@  >&PO=V]R:W-H965T<R]S:&5E=#0U+GAM;%!+ 0(4
M Q0    ( (>&I%)L:)X4]@D  #U1   9              " @6WI  !X;"]W
M;W)K<VAE971S+W-H965T-#8N>&UL4$L! A0#%     @ AX:D4AX<7<+@ @
M5P@  !D              ("!FO,  'AL+W=O<FMS:&5E=',O<VAE970T-RYX
M;6Q02P$"% ,4    " "'AJ12?!;$]Q #   M"   &0              @(&Q
M]@  >&PO=V]R:W-H965T<R]S:&5E=#0X+GAM;%!+ 0(4 Q0    ( (>&I%*Y
M=5W1>@,  !P-   9              " @?CY  !X;"]W;W)K<VAE971S+W-H
M965T-#DN>&UL4$L! A0#%     @ AX:D4L/_V1ZG @  3P8  !D
M     ("!J?T  'AL+W=O<FMS:&5E=',O<VAE970U,"YX;6Q02P$"% ,4
M" "'AJ12/ X!<X$#  "F"P  &0              @(&'  $ >&PO=V]R:W-H
M965T<R]S:&5E=#4Q+GAM;%!+ 0(4 Q0    ( (>&I%):\['(K (  *X(   9
M              " @3\$ 0!X;"]W;W)K<VAE971S+W-H965T-3(N>&UL4$L!
M A0#%     @ AX:D4M;1R2*V @  $@<  !D              ("!(@<! 'AL
M+W=O<FMS:&5E=',O<VAE970U,RYX;6Q02P$"% ,4    " "'AJ12[12+8;8#
M   :#@  &0              @($/"@$ >&PO=V]R:W-H965T<R]S:&5E=#4T
M+GAM;%!+ 0(4 Q0    ( (>&I%*D-KO[)P,  ' )   9              "
M@?P- 0!X;"]W;W)K<VAE971S+W-H965T-34N>&UL4$L! A0#%     @ AX:D
M4A;R[QE6 P  7PL  !D              ("!6A$! 'AL+W=O<FMS:&5E=',O
M<VAE970U-BYX;6Q02P$"% ,4    " "'AJ12N9<6)_$#  !]#P  &0
M        @('G% $ >&PO=V]R:W-H965T<R]S:&5E=#4W+GAM;%!+ 0(4 Q0
M   ( (>&I%*++=<\Q@(  ',&   9              " @0\9 0!X;"]W;W)K
M<VAE971S+W-H965T-3@N>&UL4$L! A0#%     @ AX:D4M_ZFWLF P  5@H
M !D              ("!#!P! 'AL+W=O<FMS:&5E=',O<VAE970U.2YX;6Q0
M2P$"% ,4    " "'AJ12C%P]HD<#  #["P  &0              @(%I'P$
M>&PO=V]R:W-H965T<R]S:&5E=#8P+GAM;%!+ 0(4 Q0    ( (>&I%*"&0;.
MU@(  +<'   9              " @><B 0!X;"]W;W)K<VAE971S+W-H965T
M-C$N>&UL4$L! A0#%     @ AX:D4H]L".*S @  J@H  !D
M ("!]"4! 'AL+W=O<FMS:&5E=',O<VAE970V,BYX;6Q02P$"% ,4    " "'
MAJ12$4(QU)("  #R!@  &0              @('>* $ >&PO=V]R:W-H965T
M<R]S:&5E=#8S+GAM;%!+ 0(4 Q0    ( (>&I%+K)G2G'0,  ' )   9
M          " @:<K 0!X;"]W;W)K<VAE971S+W-H965T-C0N>&UL4$L! A0#
M%     @ AX:D4H\7X/6C @  R 8  !D              ("!^RX! 'AL+W=O
M<FMS:&5E=',O<VAE970V-2YX;6Q02P$"% ,4    " "'AJ12*O!JSK("  !6
M"P  &0              @('5,0$ >&PO=V]R:W-H965T<R]S:&5E=#8V+GAM
M;%!+ 0(4 Q0    ( (>&I%)P00U_'P(  (8$   9              " @;XT
M 0!X;"]W;W)K<VAE971S+W-H965T-C<N>&UL4$L! A0#%     @ AX:D4H+;
M]JD$!   OQ$  !D              ("!%#<! 'AL+W=O<FMS:&5E=',O<VAE
M970V."YX;6Q02P$"% ,4    " "'AJ12**"DJE\)   $0@  &0
M    @(%/.P$ >&PO=V]R:W-H965T<R]S:&5E=#8Y+GAM;%!+ 0(4 Q0    (
M (>&I%)QT8,R$ (  '@&   9              " @>5$ 0!X;"]W;W)K<VAE
M971S+W-H965T-S N>&UL4$L! A0#%     @ AX:D4E@!GHAP P  !A<   T
M             ( !+$<! 'AL+W-T>6QE<RYX;6Q02P$"% ,4    " "'AJ12
MEXJ[',     3 @  "P              @ ''2@$ 7W)E;',O+G)E;'-02P$"
M% ,4    " "'AJ12F[?[_D$%  !)+@  #P              @ &P2P$ >&PO
M=V]R:V)O;VLN>&UL4$L! A0#%     @ AX:D4MMVL'$Q @  B2D  !H
M         ( !'E$! 'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR96QS4$L! A0#
M%     @ AX:D4J3(PW?Z 0  M"@  !,              ( !AU,! %M#;VYT
D96YT7U1Y<&5S72YX;6Q02P4&     $X 3@!9%0  LE4!

end
</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>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>84
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.21.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>322</ContextCount>
  <ElementCount>364</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>83</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>10</UnitCount>
  <MyReports>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>0001001 - Document - Cover Page</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/CoverPage</Role>
      <ShortName>Cover Page</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>1001002 - Statement - Condensed Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets</Role>
      <ShortName>Condensed Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>1002003 - Statement - Condensed Consolidated Balance Sheets (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/CondensedConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>Condensed Consolidated Balance Sheets (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>1003004 - Statement - Condensed Consolidated Statements of Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome</Role>
      <ShortName>Condensed Consolidated Statements of Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>1004005 - Statement - Condensed Consolidated Statements of Comprehensive Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome</Role>
      <ShortName>Condensed Consolidated Statements of Comprehensive Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>1005006 - Statement - Condensed Consolidated Statements of Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity</Role>
      <ShortName>Condensed Consolidated Statements of Stockholders' Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>1006007 - Statement - Condensed Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows</Role>
      <ShortName>Condensed Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>2101101 - Disclosure - Basis of Presentation and New Accounting Pronouncements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncements</Role>
      <ShortName>Basis of Presentation and New Accounting Pronouncements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>2103102 - Disclosure - Concentration of Credit and Other Risks</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/ConcentrationofCreditandOtherRisks</Role>
      <ShortName>Concentration of Credit and Other Risks</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>2106103 - Disclosure - Inventories, net</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/Inventoriesnet</Role>
      <ShortName>Inventories, net</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>2109104 - Disclosure - Acquisition</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/Acquisition</Role>
      <ShortName>Acquisition</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>2114105 - Disclosure - Goodwill and Intangible Assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/GoodwillandIntangibleAssets</Role>
      <ShortName>Goodwill and Intangible Assets</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>2120106 - Disclosure - Accrued Liabilities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/AccruedLiabilities</Role>
      <ShortName>Accrued Liabilities</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>2123107 - Disclosure - Fair Value and Derivative Instruments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/FairValueandDerivativeInstruments</Role>
      <ShortName>Fair Value and Derivative Instruments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>2132108 - Disclosure - Warranty</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/Warranty</Role>
      <ShortName>Warranty</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>2135109 - Disclosure - Property, Plant, and Equipment, net</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/PropertyPlantandEquipmentnet</Role>
      <ShortName>Property, Plant, and Equipment, net</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>2138110 - Disclosure - Stockholders??? Equity and Stock-Based Compensation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensation</Role>
      <ShortName>Stockholders??? Equity and Stock-Based Compensation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>2146111 - Disclosure - Net Income per Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/NetIncomeperShare</Role>
      <ShortName>Net Income per Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>2149112 - Disclosure - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/CommitmentsandContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>2150113 - Disclosure - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/Leases</Role>
      <ShortName>Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>2155114 - Disclosure - Revenue</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/Revenue</Role>
      <ShortName>Revenue</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>2158115 - Disclosure - Operating Segments and Enterprise-Wide Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformation</Role>
      <ShortName>Operating Segments and Enterprise-Wide Information</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>2202201 - Disclosure - Basis of Presentation and New Accounting Pronouncements (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncementsPolicies</Role>
      <ShortName>Basis of Presentation and New Accounting Pronouncements (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncements</ParentRole>
      <Position>23</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>2304301 - Disclosure - Concentration of Credit and Other Risks (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksTables</Role>
      <ShortName>Concentration of Credit and Other Risks (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.formfactor.com/role/ConcentrationofCreditandOtherRisks</ParentRole>
      <Position>24</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>2307302 - Disclosure - Inventories, net (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/InventoriesnetTables</Role>
      <ShortName>Inventories, net (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.formfactor.com/role/Inventoriesnet</ParentRole>
      <Position>25</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>2310303 - Disclosure - Acquisition (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/AcquisitionTables</Role>
      <ShortName>Acquisition (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.formfactor.com/role/Acquisition</ParentRole>
      <Position>26</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>2315304 - Disclosure - Goodwill and Intangible Assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/GoodwillandIntangibleAssetsTables</Role>
      <ShortName>Goodwill and Intangible Assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.formfactor.com/role/GoodwillandIntangibleAssets</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>2321305 - Disclosure - Accrued Liabilities (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/AccruedLiabilitiesTables</Role>
      <ShortName>Accrued Liabilities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.formfactor.com/role/AccruedLiabilities</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>2324306 - Disclosure - Fair Value and Derivative Instruments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/FairValueandDerivativeInstrumentsTables</Role>
      <ShortName>Fair Value and Derivative Instruments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.formfactor.com/role/FairValueandDerivativeInstruments</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>2333307 - Disclosure - Warranty (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/WarrantyTables</Role>
      <ShortName>Warranty (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.formfactor.com/role/Warranty</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>2336308 - Disclosure - Property, Plant, and Equipment, net (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/PropertyPlantandEquipmentnetTables</Role>
      <ShortName>Property, Plant, and Equipment, net (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.formfactor.com/role/PropertyPlantandEquipmentnet</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>2339309 - Disclosure - Stockholders??? Equity and Stock-Based Compensation (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationTables</Role>
      <ShortName>Stockholders??? Equity and Stock-Based Compensation (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensation</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>2347310 - Disclosure - Net Income per Share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/NetIncomeperShareTables</Role>
      <ShortName>Net Income per Share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.formfactor.com/role/NetIncomeperShare</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>2351311 - Disclosure - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/LeasesTables</Role>
      <ShortName>Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.formfactor.com/role/Leases</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>2359312 - Disclosure - Operating Segments and Enterprise-Wide Information (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationTables</Role>
      <ShortName>Operating Segments and Enterprise-Wide Information (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformation</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>2405401 - Disclosure - Concentration of Credit and Other Risks (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails</Role>
      <ShortName>Concentration of Credit and Other Risks (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksTables</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>2408402 - Disclosure - Inventories, net (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/InventoriesnetDetails</Role>
      <ShortName>Inventories, net (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.formfactor.com/role/InventoriesnetTables</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>2411403 - Disclosure - Acquisition - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails</Role>
      <ShortName>Acquisition - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>38</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>2412404 - Disclosure - Acquisition - Assets Acquired and Liabilities Assumed (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails</Role>
      <ShortName>Acquisition - Assets Acquired and Liabilities Assumed (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>39</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>2413405 - Disclosure - Acquisition - Intangible Assets Acquired (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails</Role>
      <ShortName>Acquisition - Intangible Assets Acquired (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>40</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>2416406 - Disclosure - Goodwill and Intangible Assets - Goodwill (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails</Role>
      <ShortName>Goodwill and Intangible Assets - Goodwill (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>41</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>2417407 - Disclosure - Goodwill and Intangible Assets - Additional information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/GoodwillandIntangibleAssetsAdditionalinformationDetails</Role>
      <ShortName>Goodwill and Intangible Assets - Additional information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>42</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>2418408 - Disclosure - Goodwill and Intangible Assets - Intangible Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails</Role>
      <ShortName>Goodwill and Intangible Assets - Intangible Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>43</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>2419409 - Disclosure - Goodwill and Intangible Assets - Amortization Expense (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails</Role>
      <ShortName>Goodwill and Intangible Assets - Amortization Expense (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>2422410 - Disclosure - Accrued Liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/AccruedLiabilitiesDetails</Role>
      <ShortName>Accrued Liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.formfactor.com/role/AccruedLiabilitiesTables</ParentRole>
      <Position>45</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>2425411 - Disclosure - Fair Value and Derivative Instruments - Fair Value Assets Measured on Recurring Basis (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails</Role>
      <ShortName>Fair Value and Derivative Instruments - Fair Value Assets Measured on Recurring Basis (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>46</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>2426412 - Disclosure - Fair Value and Derivative Instruments - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAdditionalInformationDetails</Role>
      <ShortName>Fair Value and Derivative Instruments - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>2427413 - Disclosure - Fair Value and Derivative Instruments - Impact of Cash Flow Hedges and Derivatives (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails</Role>
      <ShortName>Fair Value and Derivative Instruments - Impact of Cash Flow Hedges and Derivatives (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>2428414 - Disclosure - Fair Value and Derivative Instruments - Foreign Currency Forward Contracts (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails</Role>
      <ShortName>Fair Value and Derivative Instruments - Foreign Currency Forward Contracts (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>49</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>2429415 - Disclosure - Fair Value and Derivative Instruments - Gains and Losses Related to Non-designated Derivative Instruments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails</Role>
      <ShortName>Fair Value and Derivative Instruments - Gains and Losses Related to Non-designated Derivative Instruments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>2430416 - Disclosure - Fair Value and Derivative Instruments - Impact of Foreign Exchange Derivattive Contracts Designated as Cash Flow Hedges (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails</Role>
      <ShortName>Fair Value and Derivative Instruments - Impact of Foreign Exchange Derivattive Contracts Designated as Cash Flow Hedges (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>2431417 - Disclosure - Fair Value and Derivative Instruments - Assets Measured at Fair Value on a Non-Recurring Basis (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails</Role>
      <ShortName>Fair Value and Derivative Instruments - Assets Measured at Fair Value on a Non-Recurring Basis (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>2434418 - Disclosure - Warranty (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/WarrantyDetails</Role>
      <ShortName>Warranty (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.formfactor.com/role/WarrantyTables</ParentRole>
      <Position>53</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>2437419 - Disclosure - Property, Plant, and Equipment, net (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails</Role>
      <ShortName>Property, Plant, and Equipment, net (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.formfactor.com/role/PropertyPlantandEquipmentnetTables</ParentRole>
      <Position>54</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>2440420 - Disclosure - Stockholders??? Equity and Stock-Based Compensation - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails</Role>
      <ShortName>Stockholders??? Equity and Stock-Based Compensation - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>2441421 - Disclosure - Stockholders??? Equity and Stock-Based Compensation - Restricted Stock Unit Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails</Role>
      <ShortName>Stockholders??? Equity and Stock-Based Compensation - Restricted Stock Unit Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>56</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>2442422 - Disclosure - Stockholders??? Equity and Stock-Based Compensation - Stock Option Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails</Role>
      <ShortName>Stockholders??? Equity and Stock-Based Compensation - Stock Option Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>2443423 - Disclosure - Stockholders??? Equity and Stock-Based Compensation - ESPP Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationESPPActivityDetails</Role>
      <ShortName>Stockholders??? Equity and Stock-Based Compensation - ESPP Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>2444424 - Disclosure - Stockholders??? Equity and Stock-Based Compensation - Stock-Based Compensation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails</Role>
      <ShortName>Stockholders??? Equity and Stock-Based Compensation - Stock-Based Compensation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>2445425 - Disclosure - Stockholders??? Equity and Stock-Based Compensation - Unrecognized Compensation Costs (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails</Role>
      <ShortName>Stockholders??? Equity and Stock-Based Compensation - Unrecognized Compensation Costs (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>60</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>2448426 - Disclosure - Net Income per Share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/NetIncomeperShareDetails</Role>
      <ShortName>Net Income per Share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.formfactor.com/role/NetIncomeperShareTables</ParentRole>
      <Position>61</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>2452427 - Disclosure - Leases - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/LeasesNarrativeDetails</Role>
      <ShortName>Leases - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>2453428 - Disclosure - Leases - Components of Lease Expense (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/LeasesComponentsofLeaseExpenseDetails</Role>
      <ShortName>Leases - Components of Lease Expense (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>63</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>2454429 - Disclosure - Leases - Schedule of Future Minimum Payments Under Leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails</Role>
      <ShortName>Leases - Schedule of Future Minimum Payments Under Leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>64</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>2456430 - Disclosure - Revenue - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/RevenueAdditionalInformationDetails</Role>
      <ShortName>Revenue - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>65</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>2457431 - Disclosure - Revenue - Remaining Performance Obligation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails</Role>
      <ShortName>Revenue - Remaining Performance Obligation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>66</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>2460432 - Disclosure - Operating Segments and Enterprise-Wide Information - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationAdditionalInformationDetails</Role>
      <ShortName>Operating Segments and Enterprise-Wide Information - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>67</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>2461433 - Disclosure - Operating Segments and Enterprise-Wide Information - Operating Results by Segment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails</Role>
      <ShortName>Operating Segments and Enterprise-Wide Information - Operating Results by Segment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>68</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>2462434 - Disclosure - Operating Segments and Enterprise-Wide Information - Revenue by Segment, Recognition Type, and Geographic Area (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails</Role>
      <ShortName>Operating Segments and Enterprise-Wide Information - Revenue by Segment, Recognition Type, and Geographic Area (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>69</Position>
    </Report>
    <Report instance="form-20210327.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9999.htm</HtmlFileName>
      <LongName>Uncategorized Items - form-20210327.htm</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/role/uncategorizedFacts</Role>
      <ShortName>Uncategorized Items - form-20210327.htm</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>70</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-Q" original="form-20210327.htm">form-20210327.htm</File>
    <File>form-20210327.xsd</File>
    <File>form-20210327_cal.xml</File>
    <File>form-20210327_def.xml</File>
    <File>form-20210327_lab.xml</File>
    <File>form-20210327_pre.xml</File>
    <File>formq121exh3101.htm</File>
    <File>formq121exh3102.htm</File>
    <File>formq121exh3201.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy>http://fasb.org/srt/2020-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://xbrl.sec.gov/currency/2020-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://fasb.org/us-gaap/2020-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://xbrl.sec.gov/dei/2020-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://xbrl.sec.gov/country/2020-01-31</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>87
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "form-20210327.htm": {
   "axisCustom": 0,
   "axisStandard": 27,
   "contextCount": 322,
   "dts": {
    "calculationLink": {
     "local": [
      "form-20210327_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "form-20210327_def.xml"
     ],
     "remote": [
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-eedm-def-2020-01-31.xml",
      "http://xbrl.fasb.org/srt/2020/elts/srt-eedm1-def-2020-01-31.xml"
     ]
    },
    "inline": {
     "local": [
      "form-20210327.htm"
     ]
    },
    "labelLink": {
     "local": [
      "form-20210327_lab.xml"
     ],
     "remote": [
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-doc-2020-01-31.xml",
      "https://xbrl.sec.gov/dei/2020/dei-doc-2020-01-31.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "form-20210327_pre.xml"
     ]
    },
    "referenceLink": {
     "remote": [
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-ref-2020-01-31.xml",
      "https://xbrl.sec.gov/dei/2020/dei-ref-2020-01-31.xml"
     ]
    },
    "schema": {
     "local": [
      "form-20210327.xsd"
     ],
     "remote": [
      "http://xbrl.fasb.org/srt/2020/elts/srt-2020-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/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://xbrl.fasb.org/srt/2020/elts/srt-types-2020-01-31.xsd",
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd",
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-roles-2020-01-31.xsd",
      "http://xbrl.fasb.org/srt/2020/elts/srt-roles-2020-01-31.xsd",
      "https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd",
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-types-2020-01-31.xsd",
      "https://xbrl.sec.gov/currency/2020/currency-2020-01-31.xsd",
      "https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.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/2020/elts/us-parts-codification-2020-01-31.xsd"
     ]
    }
   },
   "elementCount": 509,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2020-01-31": 3,
    "http://xbrl.sec.gov/dei/2020-01-31": 5,
    "total": 8
   },
   "keyCustom": 11,
   "keyStandard": 353,
   "memberCustom": 18,
   "memberStandard": 63,
   "nsprefix": "form",
   "nsuri": "http://www.formfactor.com/20210327",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "0001001 - Document - Cover Page",
     "role": "http://www.formfactor.com/role/CoverPage",
     "shortName": "Cover Page",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2106103 - Disclosure - Inventories, net",
     "role": "http://www.formfactor.com/role/Inventoriesnet",
     "shortName": "Inventories, net",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2109104 - Disclosure - Acquisition",
     "role": "http://www.formfactor.com/role/Acquisition",
     "shortName": "Acquisition",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2114105 - Disclosure - Goodwill and Intangible Assets",
     "role": "http://www.formfactor.com/role/GoodwillandIntangibleAssets",
     "shortName": "Goodwill and Intangible Assets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2120106 - Disclosure - Accrued Liabilities",
     "role": "http://www.formfactor.com/role/AccruedLiabilities",
     "shortName": "Accrued Liabilities",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2123107 - Disclosure - Fair Value and Derivative Instruments",
     "role": "http://www.formfactor.com/role/FairValueandDerivativeInstruments",
     "shortName": "Fair Value and Derivative Instruments",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProductWarrantyDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2132108 - Disclosure - Warranty",
     "role": "http://www.formfactor.com/role/Warranty",
     "shortName": "Warranty",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProductWarrantyDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2135109 - Disclosure - Property, Plant, and Equipment, net",
     "role": "http://www.formfactor.com/role/PropertyPlantandEquipmentnet",
     "shortName": "Property, Plant, and Equipment, net",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2138110 - Disclosure - Stockholders\u2019 Equity and Stock-Based Compensation",
     "role": "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensation",
     "shortName": "Stockholders\u2019 Equity and Stock-Based Compensation",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2146111 - Disclosure - Net Income per Share",
     "role": "http://www.formfactor.com/role/NetIncomeperShare",
     "shortName": "Net Income per Share",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2149112 - Disclosure - Commitments and Contingencies",
     "role": "http://www.formfactor.com/role/CommitmentsandContingencies",
     "shortName": "Commitments and Contingencies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1001002 - Statement - Condensed Consolidated Balance Sheets",
     "role": "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets",
     "shortName": "Condensed Consolidated Balance Sheets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:MarketableSecuritiesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2150113 - Disclosure - Leases",
     "role": "http://www.formfactor.com/role/Leases",
     "shortName": "Leases",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2155114 - Disclosure - Revenue",
     "role": "http://www.formfactor.com/role/Revenue",
     "shortName": "Revenue",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2158115 - Disclosure - Operating Segments and Enterprise-Wide Information",
     "role": "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformation",
     "shortName": "Operating Segments and Enterprise-Wide Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "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 - Basis of Presentation and New Accounting Pronouncements (Policies)",
     "role": "http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncementsPolicies",
     "shortName": "Basis of Presentation and New Accounting Pronouncements (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2304301 - Disclosure - Concentration of Credit and Other Risks (Tables)",
     "role": "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksTables",
     "shortName": "Concentration of Credit and Other Risks (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2307302 - Disclosure - Inventories, net (Tables)",
     "role": "http://www.formfactor.com/role/InventoriesnetTables",
     "shortName": "Inventories, net (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2310303 - Disclosure - Acquisition (Tables)",
     "role": "http://www.formfactor.com/role/AcquisitionTables",
     "shortName": "Acquisition (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2315304 - Disclosure - Goodwill and Intangible Assets (Tables)",
     "role": "http://www.formfactor.com/role/GoodwillandIntangibleAssetsTables",
     "shortName": "Goodwill and Intangible Assets (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2321305 - Disclosure - Accrued Liabilities (Tables)",
     "role": "http://www.formfactor.com/role/AccruedLiabilitiesTables",
     "shortName": "Accrued Liabilities (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2324306 - Disclosure - Fair Value and Derivative Instruments (Tables)",
     "role": "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsTables",
     "shortName": "Fair Value and Derivative Instruments (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1002003 - Statement - Condensed Consolidated Balance Sheets (Parenthetical)",
     "role": "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheetsParenthetical",
     "shortName": "Condensed Consolidated Balance Sheets (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2333307 - Disclosure - Warranty (Tables)",
     "role": "http://www.formfactor.com/role/WarrantyTables",
     "shortName": "Warranty (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2336308 - Disclosure - Property, Plant, and Equipment, net (Tables)",
     "role": "http://www.formfactor.com/role/PropertyPlantandEquipmentnetTables",
     "shortName": "Property, Plant, and Equipment, net (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2339309 - Disclosure - Stockholders\u2019 Equity and Stock-Based Compensation (Tables)",
     "role": "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationTables",
     "shortName": "Stockholders\u2019 Equity and Stock-Based Compensation (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2347310 - Disclosure - Net Income per Share (Tables)",
     "role": "http://www.formfactor.com/role/NetIncomeperShareTables",
     "shortName": "Net Income per Share (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2351311 - Disclosure - Leases (Tables)",
     "role": "http://www.formfactor.com/role/LeasesTables",
     "shortName": "Leases (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2359312 - Disclosure - Operating Segments and Enterprise-Wide Information (Tables)",
     "role": "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationTables",
     "shortName": "Operating Segments and Enterprise-Wide Information (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i92fb9c092984474caaff0d4eb06e6da1_D20201227-20210327",
      "decimals": "3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2405401 - Disclosure - Concentration of Credit and Other Risks (Details)",
     "role": "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails",
     "shortName": "Concentration of Credit and Other Risks (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i92fb9c092984474caaff0d4eb06e6da1_D20201227-20210327",
      "decimals": "3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2408402 - Disclosure - Inventories, net (Details)",
     "role": "http://www.formfactor.com/role/InventoriesnetDetails",
     "shortName": "Inventories, net (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "if72cec7ca3b342c2b044431e1d621082_D20200730-20200730",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationConsiderationTransferred1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2411403 - Disclosure - Acquisition - Additional Information (Details)",
     "role": "http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails",
     "shortName": "Acquisition - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "if72cec7ca3b342c2b044431e1d621082_D20200730-20200730",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationConsiderationTransferred1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2412404 - Disclosure - Acquisition - Assets Acquired and Liabilities Assumed (Details)",
     "role": "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails",
     "shortName": "Acquisition - Assets Acquired and Liabilities Assumed (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "if97dfd7460674fdb9fcf6c7a90dc4881_I20200730",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1003004 - Statement - Condensed Consolidated Statements of Income",
     "role": "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome",
     "shortName": "Condensed Consolidated Statements of Income",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i59457e16636c4a7f800a5687585d0059_I20201019",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2413405 - Disclosure - Acquisition - Intangible Assets Acquired (Details)",
     "role": "http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails",
     "shortName": "Acquisition - Intangible Assets Acquired (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i59457e16636c4a7f800a5687585d0059_I20201019",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i6ff785e4fad44fa49d409ad053960f8e_I20201226",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2416406 - Disclosure - Goodwill and Intangible Assets - Goodwill (Details)",
     "role": "http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails",
     "shortName": "Goodwill and Intangible Assets - Goodwill (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:GoodwillForeignCurrencyTranslationGainLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillImpairmentLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2417407 - Disclosure - Goodwill and Intangible Assets - Additional information (Details)",
     "role": "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAdditionalinformationDetails",
     "shortName": "Goodwill and Intangible Assets - Additional information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillImpairmentLoss",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2418408 - Disclosure - Goodwill and Intangible Assets - Intangible Assets (Details)",
     "role": "http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails",
     "shortName": "Goodwill and Intangible Assets - Intangible Assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AmortizationOfIntangibleAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2419409 - Disclosure - Goodwill and Intangible Assets - Amortization Expense (Details)",
     "role": "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails",
     "shortName": "Goodwill and Intangible Assets - Amortization Expense (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AmortizationOfIntangibleAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2422410 - Disclosure - Accrued Liabilities (Details)",
     "role": "http://www.formfactor.com/role/AccruedLiabilitiesDetails",
     "shortName": "Accrued Liabilities (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsFairValueDisclosure",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2425411 - Disclosure - Fair Value and Derivative Instruments - Fair Value Assets Measured on Recurring Basis (Details)",
     "role": "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails",
     "shortName": "Fair Value and Derivative Instruments - Fair Value Assets Measured on Recurring Basis (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsFairValueDisclosure",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationContingentConsiderationLiability",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2426412 - Disclosure - Fair Value and Derivative Instruments - Additional Information (Details)",
     "role": "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAdditionalInformationDetails",
     "shortName": "Fair Value and Derivative Instruments - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i6990a2aeb0d84933a52a08cd48837eb6_D20191009-20191009",
      "decimals": "INF",
      "lang": "en-US",
      "name": "form:ContingentConsiderationCalculationAmountMultipleOfEBIT",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "iadf2c82018d340d88770a032d367f21e_D20201227-20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2427413 - Disclosure - Fair Value and Derivative Instruments - Impact of Cash Flow Hedges and Derivatives (Details)",
     "role": "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails",
     "shortName": "Fair Value and Derivative Instruments - Impact of Cash Flow Hedges and Derivatives (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "iadf2c82018d340d88770a032d367f21e_D20201227-20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i29f6a021e44143acb33d3256fd42ec82_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DerivativeNotionalAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2428414 - Disclosure - Fair Value and Derivative Instruments - Foreign Currency Forward Contracts (Details)",
     "role": "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails",
     "shortName": "Fair Value and Derivative Instruments - Foreign Currency Forward Contracts (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i29f6a021e44143acb33d3256fd42ec82_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DerivativeNotionalAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1004005 - Statement - Condensed Consolidated Statements of Comprehensive Income",
     "role": "http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome",
     "shortName": "Condensed Consolidated Statements of Comprehensive Income",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R50": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i41f5ac4879b947f5882bf744929e0d10_D20201227-20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DerivativeGainLossOnDerivativeNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2429415 - Disclosure - Fair Value and Derivative Instruments - Gains and Losses Related to Non-designated Derivative Instruments (Details)",
     "role": "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails",
     "shortName": "Fair Value and Derivative Instruments - Gains and Losses Related to Non-designated Derivative Instruments (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i41f5ac4879b947f5882bf744929e0d10_D20201227-20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DerivativeGainLossOnDerivativeNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ib9af7ff396304640b3355d49e0973eb0_D20201227-20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2430416 - Disclosure - Fair Value and Derivative Instruments - Impact of Foreign Exchange Derivattive Contracts Designated as Cash Flow Hedges (Details)",
     "role": "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails",
     "shortName": "Fair Value and Derivative Instruments - Impact of Foreign Exchange Derivattive Contracts Designated as Cash Flow Hedges (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ib9af7ff396304640b3355d49e0973eb0_D20201227-20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AssetsFairValueDisclosure",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2431417 - Disclosure - Fair Value and Derivative Instruments - Assets Measured at Fair Value on a Non-Recurring Basis (Details)",
     "role": "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails",
     "shortName": "Fair Value and Derivative Instruments - Assets Measured at Fair Value on a Non-Recurring Basis (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:AssetsFairValueDisclosure",
       "us-gaap:LiabilitiesFairValueDisclosure",
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i104a76d3d05e44109700c142c3f865fb_I20210327",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:AssetsFairValueDisclosure",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i6ff785e4fad44fa49d409ad053960f8e_I20201226",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProductWarrantyAccrual",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2434418 - Disclosure - Warranty (Details)",
     "role": "http://www.formfactor.com/role/WarrantyDetails",
     "shortName": "Warranty (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i6ff785e4fad44fa49d409ad053960f8e_I20201226",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProductWarrantyAccrual",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2437419 - Disclosure - Property, Plant, and Equipment, net (Details)",
     "role": "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails",
     "shortName": "Property, Plant, and Equipment, net (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:TreasuryStockValueAcquiredCostMethod",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2440420 - Disclosure - Stockholders\u2019 Equity and Stock-Based Compensation - Additional Information (Details)",
     "role": "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails",
     "shortName": "Stockholders\u2019 Equity and Stock-Based Compensation - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i83a1c50d70a44ceead8fd2607534264c_I20201026",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:StockRepurchaseProgramAuthorizedAmount1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ie1e912506c2641f3bb7d9d4001735277_D20201227-20210327",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2441421 - Disclosure - Stockholders\u2019 Equity and Stock-Based Compensation - Restricted Stock Unit Activity (Details)",
     "role": "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails",
     "shortName": "Stockholders\u2019 Equity and Stock-Based Compensation - Restricted Stock Unit Activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ifb72ab70068e414e836189f85f45fc41_I20201226",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i870d2a11d24245099f539695bcdec5d2_I20201226",
      "decimals": "0",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2442422 - Disclosure - Stockholders\u2019 Equity and Stock-Based Compensation - Stock Option Activity (Details)",
     "role": "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails",
     "shortName": "Stockholders\u2019 Equity and Stock-Based Compensation - Stock Option Activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i870d2a11d24245099f539695bcdec5d2_I20201226",
      "decimals": "0",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i05ad810c16c74d3086a67614c59b1eab_D20201227-20210327",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2443423 - Disclosure - Stockholders\u2019 Equity and Stock-Based Compensation - ESPP Activity (Details)",
     "role": "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationESPPActivityDetails",
     "shortName": "Stockholders\u2019 Equity and Stock-Based Compensation - ESPP Activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i05ad810c16c74d3086a67614c59b1eab_D20201227-20210327",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2444424 - Disclosure - Stockholders\u2019 Equity and Stock-Based Compensation - Stock-Based Compensation (Details)",
     "role": "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails",
     "shortName": "Stockholders\u2019 Equity and Stock-Based Compensation - Stock-Based Compensation (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ib7bad9174c7c49609d91e6d5c3dfc9ae_I20191228",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SharesOutstanding",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1005006 - Statement - Condensed Consolidated Statements of Stockholders' Equity",
     "role": "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity",
     "shortName": "Condensed Consolidated Statements of Stockholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ib7bad9174c7c49609d91e6d5c3dfc9ae_I20191228",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SharesOutstanding",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R60": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2445425 - Disclosure - Stockholders\u2019 Equity and Stock-Based Compensation - Unrecognized Compensation Costs (Details)",
     "role": "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails",
     "shortName": "Stockholders\u2019 Equity and Stock-Based Compensation - Unrecognized Compensation Costs (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:WeightedAverageNumberOfSharesOutstandingBasic",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2448426 - Disclosure - Net Income per Share (Details)",
     "role": "http://www.formfactor.com/role/NetIncomeperShareDetails",
     "shortName": "Net Income per Share (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseRenewalTerm",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2452427 - Disclosure - Leases - Narrative (Details)",
     "role": "http://www.formfactor.com/role/LeasesNarrativeDetails",
     "shortName": "Leases - Narrative (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseRenewalTerm",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LeaseCostTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2453428 - Disclosure - Leases - Components of Lease Expense (Details)",
     "role": "http://www.formfactor.com/role/LeasesComponentsofLeaseExpenseDetails",
     "shortName": "Leases - Components of Lease Expense (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LeaseCostTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R64": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2454429 - Disclosure - Leases - Schedule of Future Minimum Payments Under Leases (Details)",
     "role": "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails",
     "shortName": "Leases - Schedule of Future Minimum Payments Under Leases (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R65": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueRemainingPerformanceObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2456430 - Disclosure - Revenue - Additional Information (Details)",
     "role": "http://www.formfactor.com/role/RevenueAdditionalInformationDetails",
     "shortName": "Revenue - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueRemainingPerformanceObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R66": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i95ccedbfe61e47bfa57b17b6ebc66ed3_I20210327",
      "decimals": "3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueRemainingPerformanceObligationPercentage",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2457431 - Disclosure - Revenue - Remaining Performance Obligation (Details)",
     "role": "http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails",
     "shortName": "Revenue - Remaining Performance Obligation (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i95ccedbfe61e47bfa57b17b6ebc66ed3_I20210327",
      "decimals": "3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueRemainingPerformanceObligationPercentage",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R67": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NumberOfReportableSegments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "segment",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2460432 - Disclosure - Operating Segments and Enterprise-Wide Information - Additional Information (Details)",
     "role": "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationAdditionalInformationDetails",
     "shortName": "Operating Segments and Enterprise-Wide Information - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NumberOfReportableSegments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "segment",
      "xsiNil": "false"
     }
    },
    "R68": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2461433 - Disclosure - Operating Segments and Enterprise-Wide Information - Operating Results by Segment (Details)",
     "role": "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails",
     "shortName": "Operating Segments and Enterprise-Wide Information - Operating Results by Segment (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "3",
      "lang": "en-US",
      "name": "form:GrossMarginPercent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R69": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2462434 - Disclosure - Operating Segments and Enterprise-Wide Information - Revenue by Segment, Recognition Type, and Geographic Area (Details)",
     "role": "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails",
     "shortName": "Operating Segments and Enterprise-Wide Information - Revenue by Segment, Recognition Type, and Geographic Area (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ic122ffb3a2d64e3b969ffc2c161d5bf3_D20201227-20210327",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1006007 - Statement - Condensed Consolidated Statements of Cash Flows",
     "role": "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows",
     "shortName": "Condensed Consolidated Statements of Cash Flows",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:Depreciation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2101101 - Disclosure - Basis of Presentation and New Accounting Pronouncements",
     "role": "http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncements",
     "shortName": "Basis of Presentation and New Accounting Pronouncements",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2103102 - Disclosure - Concentration of Credit and Other Risks",
     "role": "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisks",
     "shortName": "Concentration of Credit and Other Risks",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "ia77ba3b859bd4da9b1c9396a9f4c22fa_D20201227-20210327",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R9999": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RestrictedCashNoncurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "",
     "isDefault": "false",
     "longName": "Uncategorized Items - form-20210327.htm",
     "role": "http://xbrl.sec.gov/role/uncategorizedFacts",
     "shortName": "Uncategorized Items - form-20210327.htm",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form-20210327.htm",
      "contextRef": "i3228e9770d2f4580bee755ffe4247a1d_I20210327",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RestrictedCashNoncurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 83,
   "tag": {
    "country_CN": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CHINA",
        "terseLabel": "China"
       }
      }
     },
     "localname": "CN",
     "nsuri": "http://xbrl.sec.gov/country/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "country_JP": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "JAPAN",
        "terseLabel": "Japan"
       }
      }
     },
     "localname": "JP",
     "nsuri": "http://xbrl.sec.gov/country/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "country_KR": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "KOREA, REPUBLIC OF",
        "terseLabel": "South Korea"
       }
      }
     },
     "localname": "KR",
     "nsuri": "http://xbrl.sec.gov/country/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "country_TW": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "TAIWAN, PROVINCE OF CHINA",
        "terseLabel": "Taiwan"
       }
      }
     },
     "localname": "TW",
     "nsuri": "http://xbrl.sec.gov/country/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "country_US": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "UNITED STATES",
        "terseLabel": "United States"
       }
      }
     },
     "localname": "US",
     "nsuri": "http://xbrl.sec.gov/country/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "currency_AllCurrenciesDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Currencies [Domain]",
        "terseLabel": "All Currencies [Domain]"
       }
      }
     },
     "localname": "AllCurrenciesDomain",
     "nsuri": "http://xbrl.sec.gov/currency/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "currency_EUR": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Euro Member Countries, Euro",
        "terseLabel": "Euro Dollar"
       }
      }
     },
     "localname": "EUR",
     "nsuri": "http://xbrl.sec.gov/currency/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "currency_JPY": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Japan, Yen",
        "terseLabel": "Japanese Yen"
       }
      }
     },
     "localname": "JPY",
     "nsuri": "http://xbrl.sec.gov/currency/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "currency_KRW": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Korea (South), Won",
        "terseLabel": "Korean Won"
       }
      }
     },
     "localname": "KRW",
     "nsuri": "http://xbrl.sec.gov/currency/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "currency_TWD": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Taiwan, New Dollars",
        "terseLabel": "Taiwan Dollar"
       }
      }
     },
     "localname": "TWD",
     "nsuri": "http://xbrl.sec.gov/currency/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CoverAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cover page.",
        "label": "Cover [Abstract]",
        "terseLabel": "Cover page."
       }
      }
     },
     "localname": "CoverAbstract",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "xbrltype": "fiscalPeriodItemType"
    },
    "dei_DocumentFiscalYearFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.",
        "label": "Document Fiscal Year Focus",
        "terseLabel": "Document Fiscal Year Focus"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "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 YYYY-MM-DD.",
        "label": "Document Period End Date",
        "terseLabel": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentQuarterlyReport": {
     "auth_ref": [
      "r488"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an quarterly report.",
        "label": "Document Quarterly Report",
        "terseLabel": "Document Quarterly Report"
       }
      }
     },
     "localname": "DocumentQuarterlyReport",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r489"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r490"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r490"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r490"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r491"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r490"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r490"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r490"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r490"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "xbrltype": "employerIdItemType"
    },
    "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r486"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r487"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CoverPage"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "form_BaldwinParkMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Baldwin Park",
        "label": "Baldwin Park [Member]",
        "terseLabel": "Baldwin Park"
       }
      }
     },
     "localname": "BaldwinParkMember",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails",
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails",
      "http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails",
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "form_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets": {
     "auth_ref": [],
     "calculation": {
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Operating Lease, Right-Of-Use Assets",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Operating Lease, Right-Of-Use Assets",
        "terseLabel": "Operating lease, right of use assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "form_ChangeInCapitalExpendituresIncurredButNotYetPaid": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Change In Capital Expenditures Incurred But Not Yet Paid",
        "label": "Change In Capital Expenditures Incurred But Not Yet Paid",
        "terseLabel": "Change in accounts payable and accrued liabilities related to property, plant and equipment purchases"
       }
      }
     },
     "localname": "ChangeInCapitalExpendituresIncurredButNotYetPaid",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "form_ContingentConsiderationCalculationAmountMultipleOfEBIT": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contingent Consideration, Calculation Amount, Multiple of EBIT",
        "label": "Contingent Consideration, Calculation Amount, Multiple of EBIT",
        "terseLabel": "Contingent consideration, calculation amount, multiple of EBIT"
       }
      }
     },
     "localname": "ContingentConsiderationCalculationAmountMultipleOfEBIT",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAdditionalInformationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "form_DRAMProductGroupMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "DRAM Product Group [Member]",
        "label": "DRAM Product Group [Member]",
        "terseLabel": "DRAM"
       }
      }
     },
     "localname": "DRAMProductGroupMember",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "form_EquityIncentivePlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equity Incentive Plan [Member]",
        "label": "Equity Incentive Plan [Member]",
        "terseLabel": "Equity Incentive Plan"
       }
      }
     },
     "localname": "EquityIncentivePlanMember",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "form_ExistingDevelopedTechnologiesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Existing Developed Technologies [Member]",
        "label": "Existing Developed Technologies [Member]",
        "verboseLabel": "Developed technologies"
       }
      }
     },
     "localname": "ExistingDevelopedTechnologiesMember",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "form_FRTGmbHMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "FRT GmbH [Member]",
        "label": "FRT GmbH [Member]",
        "terseLabel": "FRT GmbH"
       }
      }
     },
     "localname": "FRTGmbHMember",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "form_FRTMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "FRT",
        "label": "FRT [Member]",
        "terseLabel": "FRT"
       }
      }
     },
     "localname": "FRTMember",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "form_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour": {
     "auth_ref": [],
     "calculation": {
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails": {
       "order": 1.0,
       "parentTag": "form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Finite-Lived Intangible Asset, Expected Amortization, after Year Four",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, after Year Four",
        "terseLabel": "Thereafter"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal": {
     "auth_ref": [],
     "calculation": {
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Finite Lived Intangible Assets Amortization Expense Total",
        "label": "Finite Lived Intangible Assets Amortization Expense Total",
        "totalLabel": "Net"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseTotal",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "form_FlashProductGroupMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Flash Product Group [Member]",
        "label": "Flash Product Group [Member]",
        "terseLabel": "Flash"
       }
      }
     },
     "localname": "FlashProductGroupMember",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "form_FoundryLogicProductGroupMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Foundry &amp; Logic Product Group [Member]",
        "label": "Foundry &amp; Logic Product Group [Member]",
        "terseLabel": "Foundry &amp; Logic"
       }
      }
     },
     "localname": "FoundryLogicProductGroupMember",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "form_GrossMarginPercent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross Margin, Percent",
        "label": "Gross Margin, Percent",
        "terseLabel": "Gross margin"
       }
      }
     },
     "localname": "GrossMarginPercent",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "form_HighPrecisionDevicesIncMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "High Precision Devices, Inc.",
        "label": "High Precision Devices, Inc. [Member]",
        "terseLabel": "High Precision Devices, Inc."
       }
      }
     },
     "localname": "HighPrecisionDevicesIncMember",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails",
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails",
      "http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails",
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "form_IntelMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Intel [Member]",
        "label": "Intel [Member]",
        "terseLabel": "Intel Corporation"
       }
      }
     },
     "localname": "IntelMember",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "form_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour": {
     "auth_ref": [],
     "calculation": {
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails_1": {
       "order": 4.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Lessee, Operating Lease, Liability, to be Paid, after Year Four",
        "label": "Lessee, Operating Lease, Liability, to be Paid, after Year Four",
        "terseLabel": "Thereafter"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityToBePaidAfterYearFour",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "form_MajorCustomer1Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Customer 1 [Member]",
        "label": "Major Customer 1 [Member]",
        "terseLabel": "Major Customer 1"
       }
      }
     },
     "localname": "MajorCustomer1Member",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "form_MajorCustomer2Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Major Customer 2 [Member]",
        "label": "Major Customer 2 [Member]",
        "terseLabel": "Major Customer 2"
       }
      }
     },
     "localname": "MajorCustomer2Member",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "form_OperatingLeaseRightOfUseAssetAmortization": {
     "auth_ref": [],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 14.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Operating Lease, Right-Of-Use Asset, Amortization",
        "label": "Operating Lease, Right-Of-Use Asset, Amortization",
        "terseLabel": "Reduction in the carrying amount of right-of-use assets"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAssetAmortization",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "form_PerformanceRestrictedStockUnitsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Performance Restricted Stock Units [Member]",
        "label": "Performance Restricted Stock Units [Member]",
        "terseLabel": "PRSUs",
        "verboseLabel": "Performance restricted stock units"
       }
      }
     },
     "localname": "PerformanceRestrictedStockUnitsMember",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "form_ProbeCardsSegmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Probe Cards Segment [Member]",
        "label": "Probe Cards Segment [Member]",
        "terseLabel": "Probe Cards"
       }
      }
     },
     "localname": "ProbeCardsSegmentMember",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails",
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails",
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress": {
     "auth_ref": [],
     "calculation": {
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Property Plant And Equipment Net, Excludes Construction in Progress",
        "label": "Property Plant And Equipment Net, Excludes Construction in Progress",
        "totalLabel": "Net, property, plant and equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNetExcludesConstructionInProgress",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "form_RestOfTheWorldMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Rest Of The World [Member]",
        "label": "Rest Of The World [Member]",
        "terseLabel": "Rest of the world"
       }
      }
     },
     "localname": "RestOfTheWorldMember",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "form_SensorMarketsOperatingTemperature": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sensor Markets, Operating Temperature",
        "label": "Sensor Markets, Operating Temperature",
        "terseLabel": "Sensor markets, operating temperature"
       }
      }
     },
     "localname": "SensorMarketsOperatingTemperature",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "form_SystemsProductGroupMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Systems Product Group [Member]",
        "label": "Systems Product Group [Member]",
        "terseLabel": "Systems"
       }
      }
     },
     "localname": "SystemsProductGroupMember",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "form_SystemsSegmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Systems Segment [Member]",
        "label": "Systems Segment [Member]",
        "terseLabel": "Systems"
       }
      }
     },
     "localname": "SystemsSegmentMember",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails",
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails",
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "form_TaiwanSemiconductorManufacturingCoLTDMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Taiwan Semiconductor Manufacturing Co., LTD",
        "label": "Taiwan Semiconductor Manufacturing Co., LTD [Member]",
        "terseLabel": "Taiwan Semiconductor Manufacturing Co., LTD."
       }
      }
     },
     "localname": "TaiwanSemiconductorManufacturingCoLTDMember",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "form_WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted Average Per Share Discount From Fair Value From Date Of Issuance, Common Stock",
        "label": "Weighted Average Per Share Discount From Fair Value From Date Of Issuance, Common Stock",
        "terseLabel": "Weighted average per share discount from the fair value of our common stock on the date of issuance (in dollars per share)"
       }
      }
     },
     "localname": "WeightedAveragePerShareDiscountFromFairValueFromDateOfIssuanceCommonStock",
     "nsuri": "http://www.formfactor.com/20210327",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationESPPActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "srt_AsiaPacificMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Asia Pacific [Member]",
        "terseLabel": "Asia-Pacific"
       }
      }
     },
     "localname": "AsiaPacificMember",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ConsolidationItemsAxis": {
     "auth_ref": [
      "r154",
      "r167",
      "r168",
      "r169",
      "r170",
      "r172",
      "r174",
      "r178"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidation Items [Axis]",
        "terseLabel": "Consolidation Items [Axis]"
       }
      }
     },
     "localname": "ConsolidationItemsAxis",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ConsolidationItemsDomain": {
     "auth_ref": [
      "r154",
      "r167",
      "r168",
      "r169",
      "r170",
      "r172",
      "r174",
      "r178"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidation Items [Domain]",
        "terseLabel": "Consolidation Items [Domain]"
       }
      }
     },
     "localname": "ConsolidationItemsDomain",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_CurrencyAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Currency [Axis]",
        "terseLabel": "Currency [Axis]"
       }
      }
     },
     "localname": "CurrencyAxis",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_EuropeMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Europe [Member]",
        "terseLabel": "Europe"
       }
      }
     },
     "localname": "EuropeMember",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MajorCustomersAxis": {
     "auth_ref": [
      "r184",
      "r261",
      "r267",
      "r462"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Axis]",
        "terseLabel": "Major Customers [Axis]"
       }
      }
     },
     "localname": "MajorCustomersAxis",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [
      "r283",
      "r285",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r459",
      "r463"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]",
        "terseLabel": "Maximum"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAdditionalInformationDetails",
      "http://www.formfactor.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [
      "r283",
      "r285",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r459",
      "r463"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]",
        "terseLabel": "Minimum"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails",
      "http://www.formfactor.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_NameOfMajorCustomerDomain": {
     "auth_ref": [
      "r184",
      "r261",
      "r267",
      "r462"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Domain]",
        "terseLabel": "Name of Major Customer [Domain]"
       }
      }
     },
     "localname": "NameOfMajorCustomerDomain",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProductOrServiceAxis": {
     "auth_ref": [
      "r180",
      "r261",
      "r265",
      "r431",
      "r458",
      "r460"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]",
        "terseLabel": "Product and Service [Axis]"
       }
      }
     },
     "localname": "ProductOrServiceAxis",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ProductsAndServicesDomain": {
     "auth_ref": [
      "r180",
      "r261",
      "r265",
      "r431",
      "r458",
      "r460"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Domain]",
        "terseLabel": "Product and Service [Domain]"
       }
      }
     },
     "localname": "ProductsAndServicesDomain",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [
      "r273",
      "r283",
      "r285",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r459",
      "r463"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]",
        "terseLabel": "Statistical Measurement [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAdditionalInformationDetails",
      "http://www.formfactor.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [
      "r273",
      "r283",
      "r285",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r459",
      "r463"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Domain]",
        "terseLabel": "Statistical Measurement [Domain]"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAdditionalInformationDetails",
      "http://www.formfactor.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [
      "r181",
      "r182",
      "r261",
      "r266",
      "r461",
      "r476",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Domain]",
        "terseLabel": "Geographical [Domain]"
       }
      }
     },
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r181",
      "r182",
      "r261",
      "r266",
      "r461",
      "r471",
      "r476",
      "r477",
      "r478",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r484"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]",
        "terseLabel": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": {
     "auth_ref": [
      "r45"
     ],
     "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]",
        "terseLabel": "Accrued Liabilities"
       }
      }
     },
     "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AccruedLiabilities"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r44"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "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",
        "terseLabel": "Accounts payable"
       }
      }
     },
     "localname": "AccountsPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r6",
      "r23",
      "r186",
      "r187"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.",
        "label": "Accounts Receivable, after Allowance for Credit Loss, Current",
        "terseLabel": "Accounts receivable, net of allowance for doubtful accounts of $232 and $248"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedEmployeeBenefitsCurrent": {
     "auth_ref": [
      "r11",
      "r12",
      "r49"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AccruedLiabilitiesDetails": {
       "order": 1.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, excluding pension and other postretirement benefits, incurred through that date and payable for perquisites provided to employees pertaining to services received from them. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued Employee Benefits, Current",
        "terseLabel": "Employee stock purchase plan contributions withheld"
       }
      }
     },
     "localname": "AccruedEmployeeBenefitsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AccruedLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r49"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AccruedLiabilitiesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "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",
        "terseLabel": "Accrued liabilities",
        "totalLabel": "Accrued liabilities"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AccruedLiabilitiesDetails",
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r42",
      "r222"
     ],
     "calculation": {
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails": {
       "order": 2.0,
       "parentTag": "form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress",
       "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",
        "negatedTerseLabel": "Less: Accumulated depreciation and amortization"
       }
      }
     },
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r26",
      "r62",
      "r63",
      "r64",
      "r449",
      "r468",
      "r469"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 3.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",
        "terseLabel": "Accumulated other comprehensive income"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [
      "r61",
      "r64",
      "r66",
      "r108",
      "r109",
      "r110",
      "r347",
      "r464",
      "r465"
     ],
     "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]",
        "terseLabel": "Accumulated Other Comprehensive Income (Loss)"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": {
     "auth_ref": [
      "r209"
     ],
     "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": "Weighted Average Useful Life (in years)"
       }
      }
     },
     "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "auth_ref": [
      "r24"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 2.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",
        "terseLabel": "Additional paid-in capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [
      "r108",
      "r109",
      "r110",
      "r311",
      "r312",
      "r313"
     ],
     "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]",
        "terseLabel": "Additional Paid-in Capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments, Noncash Items, to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]",
        "terseLabel": "Adjustments to reconcile net income to net cash provided by operating activities:"
       }
      }
     },
     "localname": "AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "auth_ref": [
      "r286",
      "r288",
      "r316",
      "r317"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "auth_ref": [
      "r288",
      "r307",
      "r315"
     ],
     "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": "Total stock-based compensation"
       }
      }
     },
     "localname": "AllocatedShareBasedCompensationExpense",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "auth_ref": [
      "r30",
      "r188",
      "r193"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.",
        "label": "Accounts Receivable, Allowance for Credit Loss, Current",
        "terseLabel": "Allowance for doubtful accounts"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "auth_ref": [
      "r97",
      "r207",
      "r215"
     ],
     "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",
        "terseLabel": "Amortization of intangible assets"
       }
      }
     },
     "localname": "AmortizationOfIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "auth_ref": [
      "r133"
     ],
     "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": "Securities not included as they would have been antidilutive (in shares)"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/NetIncomeperShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r104",
      "r162",
      "r169",
      "r176",
      "r191",
      "r345",
      "r348",
      "r394",
      "r435",
      "r447"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets [Abstract]",
        "terseLabel": "ASSETS"
       }
      }
     },
     "localname": "AssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r8",
      "r9",
      "r55",
      "r104",
      "r191",
      "r345",
      "r348",
      "r394"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Current [Abstract]",
        "terseLabel": "Current assets:"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsFairValueDisclosure": {
     "auth_ref": [
      "r378"
     ],
     "calculation": {
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails": {
       "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",
        "terseLabel": "Assets measured at fair value on non-recurring basis",
        "totalLabel": "Total assets"
       }
      }
     },
     "localname": "AssetsFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AutomobilesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Vehicles that are used primarily for transporting people.",
        "label": "Automobiles [Member]",
        "terseLabel": "Automobiles"
       }
      }
     },
     "localname": "AutomobilesMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AwardTypeAxis": {
     "auth_ref": [
      "r289",
      "r309"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationESPPActivityDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncementsPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessAcquisitionAcquireeDomain": {
     "auth_ref": [
      "r282",
      "r284"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails",
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails",
      "http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAdditionalInformationDetails",
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "auth_ref": [
      "r282",
      "r284",
      "r327",
      "r328"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails",
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails",
      "http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAdditionalInformationDetails",
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails",
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails",
      "http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired": {
     "auth_ref": [
      "r326"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of voting equity interests acquired at the acquisition date in the business combination.",
        "label": "Business Acquisition, Percentage of Voting Interests Acquired",
        "terseLabel": "Business acquisition, percentage acquired"
       }
      }
     },
     "localname": "BusinessAcquisitionPercentageOfVotingInterestsAcquired",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_BusinessCombinationConsiderationTransferred1": {
     "auth_ref": [
      "r337",
      "r338",
      "r341"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.",
        "label": "Business Combination, Consideration Transferred",
        "terseLabel": "Consideration transferred"
       }
      }
     },
     "localname": "BusinessCombinationConsiderationTransferred1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationContingentConsiderationLiability": {
     "auth_ref": [
      "r336",
      "r339",
      "r342"
     ],
     "calculation": {
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesFairValueDisclosure",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liability recognized arising from contingent consideration in a business combination.",
        "label": "Business Combination, Contingent Consideration, Liability",
        "negatedTerseLabel": "Contingent consideration",
        "terseLabel": "Contingent consideration"
       }
      }
     },
     "localname": "BusinessCombinationContingentConsiderationLiability",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAdditionalInformationDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent": {
     "auth_ref": [
      "r336",
      "r340"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AccruedLiabilitiesDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liability recognized arising from contingent consideration in a business combination, expected to be settled within one year or the normal operating cycle, if longer.",
        "label": "Business Combination, Contingent Consideration, Liability, Current",
        "terseLabel": "Accrued contingent consideration"
       }
      }
     },
     "localname": "BusinessCombinationContingentConsiderationLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AccruedLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationDisclosureTextBlock": {
     "auth_ref": [
      "r343"
     ],
     "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": "Acquisition"
       }
      }
     },
     "localname": "BusinessCombinationDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/Acquisition"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets": {
     "auth_ref": [
      "r330"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of assets acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets",
        "totalLabel": "Tangible assets acquired"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation": {
     "auth_ref": [
      "r330"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lease obligation assumed in business combination.",
        "label": "Business Combination, Recognized Identifiable Asset Acquired and Liability Assumed, Lease Obligation",
        "negatedLabel": "Operating lease liabilities"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": {
     "auth_ref": [
      "r330"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets",
       "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 and cash equivalents"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails",
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets": {
     "auth_ref": [
      "r330"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Prepaid Expense and Other Assets",
        "terseLabel": "Prepaid expenses and other current assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": {
     "auth_ref": [
      "r330"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets",
       "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"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable": {
     "auth_ref": [
      "r330"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet",
       "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",
        "negatedLabel": "Accounts payable and accrued liabilities"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue": {
     "auth_ref": [
      "r330"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred revenue expected to be recognized as such within one year or the normal operating cycle, if longer, assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Deferred Revenue",
        "negatedLabel": "Deferred revenue"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredRevenue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities": {
     "auth_ref": [
      "r330"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet",
       "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",
        "negatedLabel": "Deferred tax liabilities"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill": {
     "auth_ref": [
      "r330"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of intangible assets, excluding goodwill, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill",
        "terseLabel": "Intangible assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles": {
     "auth_ref": [
      "r329",
      "r330"
     ],
     "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": "Amount"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory": {
     "auth_ref": [
      "r329",
      "r330"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets",
       "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet": {
     "auth_ref": [
      "r329",
      "r330"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount recognized as of the acquisition date for the identifiable assets acquired in excess of (less than) the aggregate liabilities assumed.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net",
        "totalLabel": "Total tangible assets acquired and liabilities assumed"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": {
     "auth_ref": [
      "r329",
      "r330"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment",
        "terseLabel": "Property, plant and equipment"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": {
     "auth_ref": [
      "r330"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails": {
       "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",
        "totalLabel": "Net Assets Acquired"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combinations [Abstract]",
        "terseLabel": "Business Combinations [Abstract]"
       }
      }
     },
     "localname": "BusinessCombinationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r4",
      "r40",
      "r99"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      },
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
       "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",
        "terseLabel": "Cash and cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsFairValueDisclosure": {
     "auth_ref": [],
     "calculation": {
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails": {
       "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": "Cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "auth_ref": [
      "r93",
      "r99",
      "r101"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, 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, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents",
        "periodEndLabel": "Cash, cash equivalents and restricted cash, end of period",
        "periodStartLabel": "Cash, cash equivalents and restricted cash, beginning of period",
        "totalLabel": "Total cash, cash equivalents and restricted cash"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents [Abstract]",
        "terseLabel": "Reconciliation of cash, cash equivalents and restricted cash:"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r93",
      "r395"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, 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, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect",
        "totalLabel": "Net increase (decrease) in cash, cash equivalents and restricted cash"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashFlowHedgingMember": {
     "auth_ref": [
      "r355"
     ],
     "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 hedging"
       }
      }
     },
     "localname": "CashFlowHedgingMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CertificatesOfDepositMember": {
     "auth_ref": [
      "r446"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Short to medium-term investment available at banks and savings and loan institutions where a customer agrees to lend money to the institution for a certain amount of time and is paid a predetermined rate of interest. Certificates of deposit (CD) are typically Federal Deposit Insurance Corporation (FDIC) insured.",
        "label": "Certificates of Deposit [Member]",
        "terseLabel": "Certificates of deposit"
       }
      }
     },
     "localname": "CertificatesOfDepositMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ClassOfStockDomain": {
     "auth_ref": [
      "r102",
      "r104",
      "r123",
      "r127",
      "r128",
      "r130",
      "r132",
      "r140",
      "r141",
      "r142",
      "r191",
      "r394"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommercialPaperMember": {
     "auth_ref": [
      "r241"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Unsecured promissory note (generally negotiable) that provides institutions with short-term funds.",
        "label": "Commercial Paper [Member]",
        "terseLabel": "Commercial paper"
       }
      }
     },
     "localname": "CommercialPaperMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Abstract]",
        "terseLabel": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r229",
      "r230",
      "r231",
      "r232"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for commitments and contingencies.",
        "label": "Commitments and Contingencies Disclosure [Text Block]",
        "terseLabel": "Commitments and Contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CommitmentsandContingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r108",
      "r109"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock that is subordinate to all other stock of the issuer.",
        "label": "Common Stock [Member]",
        "terseLabel": "Common Stock"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails"
     ],
     "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",
        "terseLabel": "Common stock, par value (in dollars per share)"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "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",
        "terseLabel": "Common stock, shares authorized (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "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",
        "terseLabel": "Common stock, shares issued (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r22",
      "r242"
     ],
     "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 (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r22"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "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 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.001 par value"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "auth_ref": [
      "r69",
      "r71",
      "r72",
      "r77",
      "r442",
      "r455"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome": {
       "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": "Comprehensive income"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome"
     ],
     "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 equipment and software"
       }
      }
     },
     "localname": "ComputerEquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "auth_ref": [
      "r145",
      "r146",
      "r184",
      "r391",
      "r392"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "auth_ref": [
      "r145",
      "r146",
      "r184",
      "r391",
      "r392",
      "r470"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "auth_ref": [
      "r145",
      "r146",
      "r184",
      "r391",
      "r392",
      "r470"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskDisclosureTextBlock": {
     "auth_ref": [
      "r148"
     ],
     "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]",
        "terseLabel": "Concentration of Credit and Other Risks"
       }
      }
     },
     "localname": "ConcentrationRiskDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisks"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConcentrationRiskLineItems": {
     "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": "Concentration Risk [Line Items]",
        "terseLabel": "Concentration Risk [Line Items]"
       }
      }
     },
     "localname": "ConcentrationRiskLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "auth_ref": [
      "r145",
      "r146",
      "r184",
      "r391",
      "r392"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ConcentrationRiskTable": {
     "auth_ref": [
      "r143",
      "r145",
      "r146",
      "r147",
      "r391",
      "r393"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Describes the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark.",
        "label": "Concentration Risk [Table]",
        "terseLabel": "Concentration Risk [Table]"
       }
      }
     },
     "localname": "ConcentrationRiskTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "auth_ref": [
      "r145",
      "r146",
      "r184",
      "r391",
      "r392"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConstructionInProgressGross": {
     "auth_ref": [
      "r221"
     ],
     "calculation": {
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service.",
        "label": "Construction in Progress, Gross",
        "terseLabel": "Construction-in-process"
       }
      }
     },
     "localname": "ConstructionInProgressGross",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerAssetNet": {
     "auth_ref": [
      "r247",
      "r249",
      "r262"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.",
        "label": "Contract with Customer, Asset, after Allowance for Credit Loss",
        "terseLabel": "Contract assets"
       }
      }
     },
     "localname": "ContractWithCustomerAssetNet",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/RevenueAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiability": {
     "auth_ref": [
      "r247",
      "r248",
      "r262"
     ],
     "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",
        "verboseLabel": "Contract liabilities"
       }
      }
     },
     "localname": "ContractWithCustomerLiability",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/RevenueAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": {
     "auth_ref": [
      "r263"
     ],
     "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": "Revenue recognized included in contracts"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityRevenueRecognized",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/RevenueAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CorporateAndOtherMember": {
     "auth_ref": [
      "r149"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Component of an entity that provides financial and operational oversight and administrative support for other segments and other segments not separately reported due to size or nature of business activities. Excludes intersegment elimination and reconciling items.",
        "label": "Corporate and Other [Member]",
        "terseLabel": "Corporate and Other"
       }
      }
     },
     "localname": "CorporateAndOtherMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CorporateBondSecuritiesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This category includes information about long-term debt securities that are issued by either a domestic or foreign corporate business entity with a date certain promise of repayment and a return to the holder for the time value of money (for example, variable or fixed interest, original issue discount).",
        "label": "Corporate Bond Securities [Member]",
        "terseLabel": "Corporate bonds"
       }
      }
     },
     "localname": "CorporateBondSecuritiesMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "auth_ref": [
      "r81",
      "r431"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0
      }
     },
     "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 revenues"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSold",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSoldAmortization": {
     "auth_ref": [
      "r79"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "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"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSoldAmortization",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "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 revenues"
       }
      }
     },
     "localname": "CostOfSalesMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails",
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CustomerConcentrationRiskMember": {
     "auth_ref": [
      "r144",
      "r184"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CustomerRelationshipsMember": {
     "auth_ref": [
      "r334"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails",
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DeferredCreditsAndOtherLiabilitiesNoncurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount as of the balance sheet date of unearned revenue or income, not otherwise specified in the taxonomy, which is expected to be taken into income after one year or beyond the normal operating cycle, if longer and noncurrent obligations not separately disclosed in the balance sheet (other liabilities, noncurrent).",
        "label": "Deferred Credits and Other Liabilities, Noncurrent",
        "terseLabel": "Other liabilities"
       }
      }
     },
     "localname": "DeferredCreditsAndOtherLiabilitiesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "auth_ref": [
      "r319",
      "r320"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 8.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",
        "terseLabel": "Deferred tax assets"
       }
      }
     },
     "localname": "DeferredIncomeTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilitiesNet": {
     "auth_ref": [
      "r319",
      "r320"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_Liabilities",
       "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredRevenueCurrent": {
     "auth_ref": [
      "r31"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "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"
       }
      }
     },
     "localname": "DeferredRevenueCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Depreciation": {
     "auth_ref": [
      "r97",
      "r220"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeAssets": {
     "auth_ref": [
      "r56",
      "r57",
      "r388"
     ],
     "calculation": {
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails": {
       "order": 3.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 contracts"
       }
      }
     },
     "localname": "DerivativeAssets",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DerivativeGainLossOnDerivativeNet": {
     "auth_ref": [
      "r360"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in the fair value of derivatives recognized in the income statement.",
        "label": "Derivative, Gain (Loss) on Derivative, Net",
        "verboseLabel": "Derivatives Not Designated as Hedging Instruments"
       }
      }
     },
     "localname": "DerivativeGainLossOnDerivativeNet",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeInstrumentRiskAxis": {
     "auth_ref": [
      "r359",
      "r362",
      "r367",
      "r371"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis": {
     "auth_ref": [
      "r356",
      "r359",
      "r367"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable": {
     "auth_ref": [
      "r356",
      "r359",
      "r367",
      "r371",
      "r372",
      "r375",
      "r377"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeLiabilities": {
     "auth_ref": [
      "r56",
      "r57",
      "r388"
     ],
     "calculation": {
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails": {
       "order": 2.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",
        "negatedTerseLabel": "Derivative liability"
       }
      }
     },
     "localname": "DerivativeLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeLineItems": {
     "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 [Line Items]",
        "terseLabel": "Derivative [Line Items]"
       }
      }
     },
     "localname": "DerivativeLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeNotionalAmount": {
     "auth_ref": [
      "r352",
      "r354"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Nominal or face amount used to calculate payment on derivative.",
        "label": "Derivative, Notional Amount",
        "negatedTerseLabel": "Derivative, notional amount"
       }
      }
     },
     "localname": "DerivativeNotionalAmount",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeTable": {
     "auth_ref": [
      "r351",
      "r353",
      "r354",
      "r356",
      "r357",
      "r363",
      "r367",
      "r373",
      "r374",
      "r377"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule that describes and identifies a derivative or group of derivatives on a disaggregated basis, such as for individual instruments, or small groups of similar instruments. May include a combination of the type of instrument, risks being hedged, notional amount, hedge designation, related hedged item, inception date, maturity date, or other relevant item.",
        "label": "Derivative [Table]",
        "terseLabel": "Derivative [Table]"
       }
      }
     },
     "localname": "DerivativeTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DesignatedAsHedgingInstrumentMember": {
     "auth_ref": [
      "r356"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Derivative instrument designated as hedging instrument under Generally Accepted Accounting Principles (GAAP).",
        "label": "Designated as Hedging Instrument [Member]",
        "terseLabel": "Designated as hedging instrument"
       }
      }
     },
     "localname": "DesignatedAsHedgingInstrumentMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DevelopedTechnologyRightsMember": {
     "auth_ref": [
      "r335"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Rights to developed technology, which can include the right to develop, use, market, sell, or offer for sale products, compounds, or intellectual property.",
        "label": "Developed Technology Rights [Member]",
        "terseLabel": "Developed technologies"
       }
      }
     },
     "localname": "DevelopedTechnologyRightsMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueTable": {
     "auth_ref": [
      "r261",
      "r265",
      "r266",
      "r267",
      "r268",
      "r269",
      "r270",
      "r271"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "auth_ref": [
      "r261"
     ],
     "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 by Segment"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share [Abstract]",
        "terseLabel": "Net income per share:"
       }
      }
     },
     "localname": "EarningsPerShareAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r78",
      "r113",
      "r114",
      "r115",
      "r116",
      "r117",
      "r121",
      "r123",
      "r130",
      "r131",
      "r132",
      "r136",
      "r137",
      "r443",
      "r456"
     ],
     "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 (In dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareDiluted": {
     "auth_ref": [
      "r78",
      "r113",
      "r114",
      "r115",
      "r116",
      "r117",
      "r123",
      "r130",
      "r131",
      "r132",
      "r136",
      "r137",
      "r443",
      "r456"
     ],
     "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 (In dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "auth_ref": [
      "r133",
      "r134",
      "r135",
      "r138"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for earnings per share.",
        "label": "Earnings Per Share [Text Block]",
        "terseLabel": "Net Income per Share"
       }
      }
     },
     "localname": "EarningsPerShareTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/NetIncomeperShare"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "auth_ref": [
      "r395"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, 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": "Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents",
        "terseLabel": "Effect of exchange rate changes on cash, cash equivalents and restricted cash"
       }
      }
     },
     "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "auth_ref": [
      "r49"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AccruedLiabilitiesDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Employee-related Liabilities, Current",
        "terseLabel": "Accrued compensation and benefits"
       }
      }
     },
     "localname": "EmployeeRelatedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AccruedLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems": {
     "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, Expensed and Capitalized, Amount [Line Items]",
        "terseLabel": "Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r308"
     ],
     "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",
        "terseLabel": "Average Expected Recognition Period in Years"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions": {
     "auth_ref": [
      "r308"
     ],
     "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": "Unrecognized Expense"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails"
     ],
     "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 purchase plan"
       }
      }
     },
     "localname": "EmployeeStockMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationESPPActivityDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tangible personal property used to produce goods and services.",
        "label": "Equipment [Member]",
        "terseLabel": "Machinery and equipment"
       }
      }
     },
     "localname": "EquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity [Abstract]",
        "terseLabel": "Equity [Abstract]"
       }
      }
     },
     "localname": "EquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r108",
      "r109",
      "r110",
      "r112",
      "r118",
      "r120",
      "r139",
      "r192",
      "r242",
      "r243",
      "r311",
      "r312",
      "r313",
      "r322",
      "r323",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r402",
      "r464",
      "r465",
      "r466"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": {
     "auth_ref": [
      "r378",
      "r379",
      "r380",
      "r386"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain": {
     "auth_ref": [
      "r383"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Class of asset.",
        "label": "Asset Class [Domain]",
        "terseLabel": "Fair Value by Asset Class [Domain]"
       }
      }
     },
     "localname": "FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems": {
     "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, Balance Sheet Grouping, Financial Statement Captions [Line Items]",
        "terseLabel": "Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]"
       }
      }
     },
     "localname": "FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAdditionalInformationDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueByAssetClassAxis": {
     "auth_ref": [
      "r378",
      "r386"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by class of asset.",
        "label": "Asset Class [Axis]",
        "terseLabel": "Asset Class [Axis]"
       }
      }
     },
     "localname": "FairValueByAssetClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueByBalanceSheetGroupingTable": {
     "auth_ref": [
      "r378",
      "r389",
      "r390"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about the fair value of financial instruments, including financial assets and financial liabilities, and the measurements of those instruments, assets, and liabilities.",
        "label": "Fair Value, by Balance Sheet Grouping [Table]",
        "terseLabel": "Fair Value, by Balance Sheet Grouping [Table]"
       }
      }
     },
     "localname": "FairValueByBalanceSheetGroupingTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAdditionalInformationDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueByFairValueHierarchyLevelAxis": {
     "auth_ref": [
      "r274",
      "r275",
      "r276",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r379",
      "r421",
      "r422",
      "r423"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueByMeasurementFrequencyAxis": {
     "auth_ref": [
      "r378",
      "r379",
      "r381",
      "r382",
      "r387"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Disclosures [Abstract]",
        "terseLabel": "Fair Value Disclosures [Abstract]"
       }
      }
     },
     "localname": "FairValueDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueDisclosuresTextBlock": {
     "auth_ref": [
      "r385"
     ],
     "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 and Derivative Instruments"
       }
      }
     },
     "localname": "FairValueDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstruments"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueInputsLevel1Member": {
     "auth_ref": [
      "r274",
      "r275",
      "r280",
      "r281",
      "r379",
      "r421"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueInputsLevel2Member": {
     "auth_ref": [
      "r274",
      "r275",
      "r280",
      "r281",
      "r379",
      "r422"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueInputsLevel3Member": {
     "auth_ref": [
      "r274",
      "r275",
      "r276",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r379",
      "r423"
     ],
     "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"
       }
      }
     },
     "localname": "FairValueInputsLevel3Member",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueMeasurementPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for fair value measurements of financial and non-financial assets, liabilities and instruments classified in shareholders' equity. Disclosures include, but are not limited to, how an entity that manages a group of financial assets and liabilities on the basis of its net exposure measures the fair value of those assets and liabilities.",
        "label": "Fair Value Measurement, Policy [Policy Text Block]",
        "terseLabel": "Fair Value"
       }
      }
     },
     "localname": "FairValueMeasurementPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncementsPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": {
     "auth_ref": [
      "r274",
      "r275",
      "r276",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r421",
      "r422",
      "r423"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueMeasurementsNonrecurringMember": {
     "auth_ref": [
      "r378",
      "r379",
      "r381",
      "r382",
      "r384",
      "r387"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Infrequent fair value measurement. Includes, but is not limited to, fair value adjustment for impairment of asset, liability or equity, not frequently measured at fair value.",
        "label": "Fair Value, Nonrecurring [Member]",
        "terseLabel": "Nonrecurring"
       }
      }
     },
     "localname": "FairValueMeasurementsNonrecurringMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable": {
     "auth_ref": [
      "r358",
      "r363",
      "r375"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "auth_ref": [
      "r214"
     ],
     "calculation": {
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails": {
       "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",
        "terseLabel": "Accumulated Amortization"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "auth_ref": [
      "r216"
     ],
     "calculation": {
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails": {
       "order": 6.0,
       "parentTag": "form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year One",
        "terseLabel": "2022"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear": {
     "auth_ref": [],
     "calculation": {
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails": {
       "order": 5.0,
       "parentTag": "form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in remainder of current fiscal year.",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Remainder of Fiscal Year",
        "terseLabel": "Remainder of 2021"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of amortization expense of assets, excluding financial assets, that lack physical substance, having a limited useful life.",
        "label": "Finite-lived Intangible Assets Amortization Expense [Table Text Block]",
        "terseLabel": "Schedule of Amortization Expense"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": {
     "auth_ref": [
      "r216"
     ],
     "calculation": {
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails": {
       "order": 3.0,
       "parentTag": "form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Four",
        "terseLabel": "2025"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": {
     "auth_ref": [
      "r216"
     ],
     "calculation": {
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails": {
       "order": 4.0,
       "parentTag": "form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Three",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "auth_ref": [
      "r216"
     ],
     "calculation": {
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails": {
       "order": 2.0,
       "parentTag": "form_FiniteLivedIntangibleAssetsAmortizationExpenseTotal",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Two",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r208",
      "r211",
      "r214",
      "r218",
      "r432",
      "r433"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails",
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsGross": {
     "auth_ref": [
      "r214",
      "r433"
     ],
     "calculation": {
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails": {
       "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",
        "terseLabel": "Gross"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r208",
      "r213"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails",
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "auth_ref": [
      "r214",
      "r432"
     ],
     "calculation": {
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails": {
       "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",
        "totalLabel": "Net"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Net, Amortization Expense, Rolling Maturity [Abstract]",
        "terseLabel": "Finite-Lived Intangible Assets, Net, Amortization Expense, Rolling Maturity [Abstract]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsNetAmortizationExpenseRollingMaturityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiscalPeriod": {
     "auth_ref": [
      "r344"
     ],
     "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]",
        "terseLabel": "Fiscal Year"
       }
      }
     },
     "localname": "FiscalPeriod",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncementsPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ForeignExchangeContractMember": {
     "auth_ref": [
      "r274",
      "r370"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Derivative instrument whose primary underlying risk is tied to foreign exchange rates.",
        "label": "Foreign Exchange Contract [Member]",
        "terseLabel": "Foreign exchange derivative contracts"
       }
      }
     },
     "localname": "ForeignExchangeContractMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "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 exchange forward contracts"
       }
      }
     },
     "localname": "ForeignExchangeForwardMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Goodwill": {
     "auth_ref": [
      "r197",
      "r199",
      "r434"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      },
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "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, ending balance",
        "periodStartLabel": "Goodwill, beginning balance",
        "terseLabel": "Goodwill"
       }
      }
     },
     "localname": "Goodwill",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails",
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAcquiredDuringPeriod": {
     "auth_ref": [
      "r200"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill and Intangible Assets Disclosure [Abstract]",
        "terseLabel": "Goodwill and Intangible Assets Disclosure [Abstract]"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": {
     "auth_ref": [
      "r202"
     ],
     "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": "Foreign currency translation"
       }
      }
     },
     "localname": "GoodwillForeignCurrencyTranslationGainLoss",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillImpairmentLoss": {
     "auth_ref": [
      "r97",
      "r198",
      "r201",
      "r204"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of loss from the write-down 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, Impairment Loss",
        "terseLabel": "Goodwill, impairment loss"
       }
      }
     },
     "localname": "GoodwillImpairmentLoss",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAdditionalinformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillLineItems": {
     "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": "Goodwill [Line Items]",
        "terseLabel": "Goodwill [Line Items]"
       }
      }
     },
     "localname": "GoodwillLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r80",
      "r104",
      "r162",
      "r168",
      "r172",
      "r175",
      "r178",
      "r191",
      "r394"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome": {
       "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",
        "terseLabel": "Gross profit",
        "totalLabel": "Gross profit"
       }
      }
     },
     "localname": "GrossProfit",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome",
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_HedgingDesignationAxis": {
     "auth_ref": [
      "r356",
      "r372"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_HedgingDesignationDomain": {
     "auth_ref": [
      "r356"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_HedgingRelationshipDomain": {
     "auth_ref": [
      "r356"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_InProcessResearchAndDevelopmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "In process investigation of new knowledge useful in developing new product or service or new process or technique or improvement to existing product or process, and translation of knowledge into plan or design for new product or process or for improvement to existing product or process.",
        "label": "In Process Research and Development [Member]",
        "terseLabel": "In-process research and development"
       }
      }
     },
     "localname": "InProcessResearchAndDevelopmentMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails",
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments": {
     "auth_ref": [
      "r106",
      "r162",
      "r168",
      "r172",
      "r175",
      "r178"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (loss) from continuing operations before deduction of income tax expense (benefit) and income (loss) attributable to noncontrolling interest, and addition of income (loss) from equity method investments.",
        "label": "Income (Loss) from Continuing Operations before Equity Method Investments, Income Taxes, Noncontrolling Interest",
        "totalLabel": "Income before income taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeStatementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]",
        "terseLabel": "Income Statement [Abstract]"
       }
      }
     },
     "localname": "IncomeStatementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "auth_ref": [
      "r224"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by location in the income statement.",
        "label": "Income Statement Location [Axis]",
        "terseLabel": "Income Statement Location [Axis]"
       }
      }
     },
     "localname": "IncomeStatementLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails",
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails"
     ],
     "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]"
       }
      }
     },
     "localname": "IncomeStatementLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails",
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r105",
      "r119",
      "r120",
      "r160",
      "r321",
      "r324",
      "r325",
      "r457"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0
      }
     },
     "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)",
        "terseLabel": "Provision for income taxes"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxesPaidNet": {
     "auth_ref": [
      "r100"
     ],
     "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, net of any cash received during the current period as refunds for the overpayment of taxes.",
        "label": "Income Taxes Paid, Net",
        "terseLabel": "Cash paid for income taxes, net"
       }
      }
     },
     "localname": "IncomeTaxesPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 4.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",
        "terseLabel": "Accounts payable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 5.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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccruedLiabilities": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 7.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 expenses incurred but not yet paid.",
        "label": "Increase (Decrease) in Accrued Liabilities",
        "terseLabel": "Accrued liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInDeferredRevenue": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 12.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",
        "terseLabel": "Deferred revenues"
       }
      }
     },
     "localname": "IncreaseDecreaseInDeferredRevenue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "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 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": "Inventories"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Operating Capital [Abstract]",
        "terseLabel": "Changes in assets and liabilities:"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherDeferredLiability": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in deferred obligations classified as other.",
        "label": "Increase (Decrease) in Other Deferred Liability",
        "terseLabel": "Other liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherDeferredLiability",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingAssets": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 16.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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 13.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other.",
        "label": "Increase (Decrease) in Prepaid Expense and Other Assets",
        "negatedLabel": "Prepaid expenses and other current assets"
       }
      }
     },
     "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": {
     "auth_ref": [
      "r124",
      "r125",
      "r126",
      "r132"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.",
        "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-based Payment Arrangements",
        "terseLabel": "Add potentially dilutive securities (in shares)"
       }
      }
     },
     "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/NetIncomeperShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r210",
      "r217"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type or class of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit.",
        "label": "Indefinite-lived Intangible Assets [Axis]",
        "terseLabel": "Indefinite-lived Intangible Assets [Axis]"
       }
      }
     },
     "localname": "IndefiniteLivedIntangibleAssetsByMajorClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r210",
      "r217"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The major class of indefinite-lived intangible asset (for example, trade names, etc. but not all-inclusive), excluding goodwill. 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 the company.",
        "label": "Indefinite-lived Intangible Assets, Major Class Name [Domain]",
        "terseLabel": "Indefinite-lived Intangible Assets, Major Class Name [Domain]"
       }
      }
     },
     "localname": "IndefiniteLivedIntangibleAssetsMajorClassNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IntangibleAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r219"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for all or part of the information related to intangible assets.",
        "label": "Intangible Assets Disclosure [Text Block]",
        "terseLabel": "Goodwill and Intangible Assets"
       }
      }
     },
     "localname": "IntangibleAssetsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssets"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "auth_ref": [
      "r206",
      "r212"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.",
        "label": "Intangible Assets, Net (Excluding Goodwill)",
        "terseLabel": "Intangibles, net"
       }
      }
     },
     "localname": "IntangibleAssetsNetExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestExpense": {
     "auth_ref": [
      "r74",
      "r156",
      "r403",
      "r404",
      "r444"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome": {
       "order": 4.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the cost of borrowed funds accounted for as interest expense.",
        "label": "Interest Expense",
        "negatedTerseLabel": "Interest expense"
       }
      }
     },
     "localname": "InterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestPaidNet": {
     "auth_ref": [
      "r92",
      "r94",
      "r100"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.",
        "label": "Interest Paid, Excluding Capitalized Interest, Operating Activities",
        "terseLabel": "Cash paid for interest"
       }
      }
     },
     "localname": "InterestPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestRateSwapMember": {
     "auth_ref": [
      "r369"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Forward based contracts in which two parties agree to swap periodic payments that are fixed at the outset of the swap contract with variable payments based on a market interest rate (index rate) over a specified period.",
        "label": "Interest Rate Swap [Member]",
        "terseLabel": "Interest rate swap derivative contracts",
        "verboseLabel": "Interest rate contracts"
       }
      }
     },
     "localname": "InterestRateSwapMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_InventoryDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory Disclosure [Abstract]",
        "terseLabel": "Inventory Disclosure [Abstract]"
       }
      }
     },
     "localname": "InventoryDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "auth_ref": [
      "r196"
     ],
     "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]",
        "terseLabel": "Inventories, net"
       }
      }
     },
     "localname": "InventoryDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/Inventoriesnet"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryFinishedGoodsNetOfReserves": {
     "auth_ref": [
      "r32",
      "r195"
     ],
     "calculation": {
      "http://www.formfactor.com/role/InventoriesnetDetails": {
       "order": 3.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",
        "terseLabel": "Finished goods"
       }
      }
     },
     "localname": "InventoryFinishedGoodsNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/InventoriesnetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r5",
      "r54"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      },
      "http://www.formfactor.com/role/InventoriesnetDetails": {
       "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",
        "terseLabel": "Inventories, net",
        "totalLabel": "Inventories"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.formfactor.com/role/InventoriesnetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryRawMaterialsNetOfReserves": {
     "auth_ref": [
      "r34",
      "r195"
     ],
     "calculation": {
      "http://www.formfactor.com/role/InventoriesnetDetails": {
       "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/InventoriesnetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryWorkInProcessNetOfReserves": {
     "auth_ref": [
      "r33",
      "r195"
     ],
     "calculation": {
      "http://www.formfactor.com/role/InventoriesnetDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing.",
        "label": "Inventory, Work in Process, Net of Reserves",
        "terseLabel": "Work-in-progress"
       }
      }
     },
     "localname": "InventoryWorkInProcessNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/InventoriesnetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryWriteDown": {
     "auth_ref": [
      "r194"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of loss from reductions in inventory due to subsequent measurement adjustments, including, but not limited to, physical deterioration, obsolescence, or changes in price levels.",
        "label": "Inventory Write-down",
        "terseLabel": "Provision for excess and obsolete inventories"
       }
      }
     },
     "localname": "InventoryWriteDown",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InvestmentIncomeInterest": {
     "auth_ref": [
      "r83",
      "r155"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accretion (amortization) of purchase discount (premium) of interest income on nonoperating securities.",
        "label": "Investment Income, Interest",
        "terseLabel": "Interest income"
       }
      }
     },
     "localname": "InvestmentIncomeInterest",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LandMember": {
     "auth_ref": [
      "r265"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Part of earth's surface not covered by water.",
        "label": "Land [Member]",
        "terseLabel": "Land"
       }
      }
     },
     "localname": "LandMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeaseCost": {
     "auth_ref": [
      "r417",
      "r419"
     ],
     "calculation": {
      "http://www.formfactor.com/role/LeasesComponentsofLeaseExpenseDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lease cost recognized by lessee for lease contract.",
        "label": "Lease, Cost",
        "totalLabel": "Total lease expense"
       }
      }
     },
     "localname": "LeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesComponentsofLeaseExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseCostTableTextBlock": {
     "auth_ref": [
      "r417"
     ],
     "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": "Components of Lease Expense"
       }
      }
     },
     "localname": "LeaseCostTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LeaseholdImprovementsMember": {
     "auth_ref": [
      "r221"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additions or improvements to assets held under a lease arrangement.",
        "label": "Leasehold Improvements [Member]",
        "terseLabel": "Leasehold improvements"
       }
      }
     },
     "localname": "LeaseholdImprovementsMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeasesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Leases [Abstract]",
        "terseLabel": "Leases [Abstract]"
       }
      }
     },
     "localname": "LeasesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeLeaseDescriptionLineItems": {
     "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": "Lessee, Lease, Description [Line Items]",
        "terseLabel": "Lessee, Lease, Description [Line Items]"
       }
      }
     },
     "localname": "LesseeLeaseDescriptionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeLeaseDescriptionTable": {
     "auth_ref": [
      "r410"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about lessee's leases.",
        "label": "Lessee, Lease, Description [Table]",
        "terseLabel": "Lessee, Lease, Description [Table]"
       }
      }
     },
     "localname": "LesseeLeaseDescriptionTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r418"
     ],
     "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": "Schedule of Future Minimum Payments Under Leases"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r418"
     ],
     "calculation": {
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails_1": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.",
        "label": "Lessee, Operating Lease, Liability, to be Paid",
        "totalLabel": "Total minimum lease payments"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r418"
     ],
     "calculation": {
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails_1": {
       "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 payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year One",
        "terseLabel": "2022"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r418"
     ],
     "calculation": {
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails_1": {
       "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 payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Four",
        "terseLabel": "2025"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r418"
     ],
     "calculation": {
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails_1": {
       "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 payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r418"
     ],
     "calculation": {
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails_1": {
       "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 payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": {
     "auth_ref": [
      "r418"
     ],
     "calculation": {
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails_1": {
       "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 payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year.",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year",
        "terseLabel": "Remainder of 2021"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r418"
     ],
     "calculation": {
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails": {
       "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 in excess of discounted obligation for lease payments for operating lease.",
        "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount",
        "negatedTerseLabel": "Less: interest"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseRenewalTerm": {
     "auth_ref": [
      "r409"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Term of lessee's operating lease renewal, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Lessee, Operating Lease, Renewal Term",
        "terseLabel": "Operating lease, renewal term"
       }
      }
     },
     "localname": "LesseeOperatingLeaseRenewalTerm",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_LesseeOperatingLeaseTermOfContract": {
     "auth_ref": [
      "r409"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Term of lessee's operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Lessee, Operating Lease, Term of Contract",
        "terseLabel": "Operating lease, term of contract"
       }
      }
     },
     "localname": "LesseeOperatingLeaseTermOfContract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "auth_ref": [
      "r420"
     ],
     "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": "Leases"
       }
      }
     },
     "localname": "LesseeOperatingLeasesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/Leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r47",
      "r104",
      "r170",
      "r191",
      "r346",
      "r348",
      "r349",
      "r394"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r29",
      "r104",
      "r191",
      "r394",
      "r437",
      "r451"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities and Equity [Abstract]",
        "terseLabel": "LIABILITIES AND STOCKHOLDERS\u2019 EQUITY"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r50",
      "r104",
      "r191",
      "r346",
      "r348",
      "r349",
      "r394"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Current [Abstract]",
        "terseLabel": "Current liabilities:"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesFairValueDisclosure": {
     "auth_ref": [
      "r378"
     ],
     "calculation": {
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails": {
       "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",
        "negatedTotalLabel": "Total liabilities",
        "terseLabel": "Liabilities measured at fair value on non-recurring basis"
       }
      }
     },
     "localname": "LiabilitiesFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsAssetsMeasuredatFairValueonaNonRecurringBasisDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates an ownership position in, or purchase of, a security.",
        "label": "Long [Member]",
        "terseLabel": "Buy"
       }
      }
     },
     "localname": "LongMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LongTermDebtCurrent": {
     "auth_ref": [
      "r46"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.",
        "label": "Long-term Debt, Current Maturities",
        "terseLabel": "Current portion of term loans, net of unamortized issuance costs"
       }
      }
     },
     "localname": "LongTermDebtCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtNoncurrent": {
     "auth_ref": [
      "r51"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after unamortized (discount) premium and debt issuance costs of long-term debt classified as noncurrent and excluding amounts to be repaid within one year or the normal operating cycle, if longer. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.",
        "label": "Long-term Debt, Excluding Current Maturities",
        "terseLabel": "Term loans, less current portion, net of unamortized issuance costs"
       }
      }
     },
     "localname": "LongTermDebtNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MarketableSecurities": {
     "auth_ref": [
      "r439"
     ],
     "calculation": {
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsFairValueDisclosure",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of investment in marketable security.",
        "label": "Marketable Securities",
        "terseLabel": "Marketable securities"
       }
      }
     },
     "localname": "MarketableSecurities",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MarketableSecuritiesCurrent": {
     "auth_ref": [
      "r7",
      "r48"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of investment in marketable security, classified as current.",
        "label": "Marketable Securities, Current",
        "terseLabel": "Marketable securities"
       }
      }
     },
     "localname": "MarketableSecuritiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MoneyMarketFundsMember": {
     "auth_ref": [
      "r274"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward": {
     "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 and Extended Product Warranty Accrual, Increase (Decrease) [Roll Forward]",
        "terseLabel": "Movement in Standard and Extended Product Warranty, Increase (Decrease) [Roll Forward]"
       }
      }
     },
     "localname": "MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/WarrantyDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r93"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "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 financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]",
        "terseLabel": "Cash flows from financing activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r93"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Investing Activities, Continuing Operations [Abstract]",
        "terseLabel": "Cash flows from investing activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r93",
      "r95",
      "r98"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Operating Activities, Continuing Operations [Abstract]",
        "terseLabel": "Cash flows from operating activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r2",
      "r67",
      "r70",
      "r75",
      "r98",
      "r104",
      "r111",
      "r113",
      "r114",
      "r115",
      "r116",
      "r119",
      "r120",
      "r129",
      "r162",
      "r168",
      "r172",
      "r175",
      "r178",
      "r191",
      "r394",
      "r440",
      "r453"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      },
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome": {
       "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"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows",
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome",
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome",
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity"
     ],
     "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]",
        "terseLabel": "New Accounting Pronouncements"
       }
      }
     },
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncementsPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NoncashInvestingAndFinancingItemsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Noncash Investing and Financing Items [Abstract]",
        "terseLabel": "Non-cash investing and financing activities:"
       }
      }
     },
     "localname": "NoncashInvestingAndFinancingItemsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NondesignatedMember": {
     "auth_ref": [
      "r356"
     ],
     "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]",
        "verboseLabel": "Derivatives Not Designated as Hedging Instruments"
       }
      }
     },
     "localname": "NondesignatedMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NumberOfReportableSegments": {
     "auth_ref": [
      "r150"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.",
        "label": "Number of Reportable Segments",
        "terseLabel": "Number of reportable segments"
       }
      }
     },
     "localname": "NumberOfReportableSegments",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationAdditionalInformationDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_OperatingExpenses": {
     "auth_ref": [],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome": {
       "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingExpensesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Expenses [Abstract]",
        "terseLabel": "Operating expenses:"
       }
      }
     },
     "localname": "OperatingExpensesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r162",
      "r168",
      "r172",
      "r175",
      "r178"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments",
       "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseExpense": {
     "auth_ref": [
      "r407"
     ],
     "calculation": {
      "http://www.formfactor.com/role/LeasesComponentsofLeaseExpenseDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of operating lease expense. Excludes sublease income.",
        "label": "Operating Lease, Expense",
        "terseLabel": "Operating lease expense"
       }
      }
     },
     "localname": "OperatingLeaseExpense",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesComponentsofLeaseExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r406"
     ],
     "calculation": {
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "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": "Present value of net minimum lease payments"
       }
      }
     },
     "localname": "OperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r406"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      },
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingLeaseLiability",
       "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",
        "negatedLabel": "Less: current portion",
        "terseLabel": "Operating lease liabilities"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r406"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      },
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingLeaseLiability",
       "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": "Long-term operating lease liabilities"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.formfactor.com/role/LeasesScheduleofFutureMinimumPaymentsUnderLeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasePayments": {
     "auth_ref": [
      "r408",
      "r413"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 15.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "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",
        "negatedTerseLabel": "Operating lease liabilities"
       }
      }
     },
     "localname": "OperatingLeasePayments",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r405"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 7.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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r416",
      "r419"
     ],
     "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"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r415",
      "r419"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_OperatingSegmentsMember": {
     "auth_ref": [
      "r167",
      "r168",
      "r169",
      "r170",
      "r172",
      "r178"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identifies components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.",
        "label": "Operating Segments [Member]",
        "terseLabel": "Operating segments"
       }
      }
     },
     "localname": "OperatingSegmentsMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OrderOrProductionBacklogMember": {
     "auth_ref": [
      "r333"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Orders, production or production backlog arising from contracts such as purchase or sales orders acquired in a business combination.",
        "label": "Order or Production Backlog [Member]",
        "terseLabel": "Order backlog"
       }
      }
     },
     "localname": "OrderOrProductionBacklogMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails",
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Organization, Consolidation and Presentation of Financial Statements [Abstract]",
        "terseLabel": "Organization, Consolidation and Presentation of Financial Statements [Abstract]"
       }
      }
     },
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r3",
      "r107",
      "r148",
      "r350"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for the organization, consolidation and basis of presentation of financial statements disclosure, and significant accounting policies of the reporting entity. May be provided in more than one note to the financial statements, as long as users are provided with an understanding of (1) the significant judgments and assumptions made by an enterprise in determining whether it must consolidate a VIE and/or disclose information about its involvement with a VIE, (2) the nature of restrictions on a consolidated VIE's assets reported by an enterprise in its statement of financial position, including the carrying amounts of such assets, (3) the nature of, and changes in, the risks associated with an enterprise's involvement with the VIE, and (4) how an enterprise's involvement with the VIE affects the enterprise's financial position, financial performance, and cash flows.  Describes procedure if disclosures are provided in more than one note to the financial statements.",
        "label": "Organization, Consolidation and Presentation of Financial Statements Disclosure and Significant Accounting Policies [Text Block]",
        "terseLabel": "Basis of Presentation and New Accounting Pronouncements"
       }
      }
     },
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureAndSignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncements"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_OtherAccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r11",
      "r12",
      "r13",
      "r49"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AccruedLiabilitiesDetails": {
       "order": 3.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",
        "terseLabel": "Other accrued expenses"
       }
      }
     },
     "localname": "OtherAccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AccruedLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "auth_ref": [
      "r43"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 4.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",
        "terseLabel": "Other assets"
       }
      }
     },
     "localname": "OtherAssetsNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax": {
     "auth_ref": [
      "r59",
      "r62"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after tax and reclassification, of gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.",
        "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification and Tax",
        "terseLabel": "Unrealized gains (losses) on derivative instruments"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax": {
     "auth_ref": [
      "r59",
      "r62",
      "r361",
      "r364",
      "r376"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before tax and reclassification, of gain (loss) from derivative instrument designated and qualifying cash flow hedge included in assessment of hedge effectiveness.",
        "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), before Reclassification and Tax",
        "terseLabel": "Amount of Gain or (Loss) Recognized in OCI on Derivative (Effective Portion)",
        "verboseLabel": "Amount of Gain (Loss) Recognized in Accumulated OCI on Derivative"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax": {
     "auth_ref": [
      "r62",
      "r65",
      "r365"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before tax, of reclassification of gain (loss) from accumulated other comprehensive income (AOCI) for derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.",
        "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), Reclassification, before Tax",
        "terseLabel": "Amount of Gain or (Loss) Reclassified from Accumulated OCI into Income (Effective Portion)",
        "verboseLabel": "Amount of Gain (Loss) Reclassified from Accumulated OCI into Income"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationBeforeTax",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails",
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": {
     "auth_ref": [
      "r58"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome": {
       "order": 3.0,
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTax",
       "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.",
        "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax",
        "terseLabel": "Translation adjustments and other"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r68",
      "r71",
      "r73",
      "r76",
      "r242",
      "r396",
      "r401",
      "r402",
      "r441",
      "r454"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax and reclassification adjustments of other comprehensive income (loss).",
        "label": "Other Comprehensive Income (Loss), Net of Tax",
        "terseLabel": "Other comprehensive loss",
        "totalLabel": "Other comprehensive loss, net of tax"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome",
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Comprehensive Income (Loss), Net of Tax [Abstract]",
        "terseLabel": "Other comprehensive loss, net of tax:"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax": {
     "auth_ref": [
      "r60",
      "r62"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after tax and before adjustment, of unrealized holding gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale). Excludes unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to available-for-sale.",
        "label": "OCI, Debt Securities, Available-for-Sale, Unrealized Holding Gain (Loss), before Adjustment, after Tax",
        "terseLabel": "Unrealized losses on available-for-sale marketable securities"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "auth_ref": [
      "r84"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome": {
       "order": 3.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.",
        "label": "Other Nonoperating Income (Expense)",
        "terseLabel": "Other income (expense), net"
       }
      }
     },
     "localname": "OtherNonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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": "Location of Gain (Loss) Recognized on Derivatives"
       }
      }
     },
     "localname": "OtherNonoperatingIncomeExpenseMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsGainsandLossesRelatedtoNondesignatedDerivativeInstrumentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OtherOperatingActivitiesCashFlowStatement": {
     "auth_ref": [],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 11.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 adjustments to reconcile net income to net cash provided by operating activities"
       }
      }
     },
     "localname": "OtherOperatingActivitiesCashFlowStatement",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PayablesAndAccrualsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payables and Accruals [Abstract]",
        "terseLabel": "Payables and Accruals [Abstract]"
       }
      }
     },
     "localname": "PayablesAndAccrualsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PaymentsForRepurchaseOfCommonStock": {
     "auth_ref": [
      "r90"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 2.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": "Purchase of common stock through stock repurchase program"
       }
      }
     },
     "localname": "PaymentsForRepurchaseOfCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [
      "r90"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 3.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": "Tax withholdings related to net share settlements of equity awards"
       }
      }
     },
     "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireMarketableSecurities": {
     "auth_ref": [
      "r190"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow for purchase of marketable security.",
        "label": "Payments to Acquire Marketable Securities",
        "negatedLabel": "Purchases of marketable securities"
       }
      }
     },
     "localname": "PaymentsToAcquireMarketableSecurities",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r88"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "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": "Acquisition of property, plant and equipment"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PlanNameAxis": {
     "auth_ref": [
      "r289",
      "r309"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by plan name for share-based payment arrangement.",
        "label": "Plan Name [Axis]",
        "terseLabel": "Plan Name [Axis]"
       }
      }
     },
     "localname": "PlanNameAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PlanNameDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Plan name for share-based payment arrangement.",
        "label": "Plan Name [Domain]",
        "terseLabel": "Plan Name [Domain]"
       }
      }
     },
     "localname": "PlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PositionAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by position taken for a security.",
        "label": "Position [Axis]",
        "terseLabel": "Position [Axis]"
       }
      }
     },
     "localname": "PositionAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PositionDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates position taken for a security.",
        "label": "Position [Domain]",
        "terseLabel": "Position [Domain]"
       }
      }
     },
     "localname": "PositionDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "auth_ref": [
      "r8",
      "r38",
      "r39"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.",
        "label": "Prepaid Expense and Other Assets, Current",
        "terseLabel": "Prepaid expenses and other current assets"
       }
      }
     },
     "localname": "PrepaidExpenseAndOtherAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PriorPeriodReclassificationAdjustmentDescription": {
     "auth_ref": [
      "r0"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for reclassification affecting comparability of financial statement. Excludes amendment to accounting standards, other change in accounting principle, and correction of error.",
        "label": "Reclassification, Comparability Adjustment [Policy Text Block]",
        "terseLabel": "Reclassifications"
       }
      }
     },
     "localname": "PriorPeriodReclassificationAdjustmentDescription",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/BasisofPresentationandNewAccountingPronouncementsPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates": {
     "auth_ref": [
      "r87"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow associated with the deconsolidation of a previously consolidated subsidiary or sale of an entity that is related to it but not strictly controlled.",
        "label": "Proceeds from Divestiture of Interest in Subsidiaries and Affiliates",
        "terseLabel": "Proceeds from sale of a subsidiary"
       }
      }
     },
     "localname": "ProceedsFromDivestitureOfInterestInSubsidiariesAndAffiliates",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions": {
     "auth_ref": [
      "r89",
      "r310"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow from issuance of shares under share-based payment arrangement. Includes, but is not limited to, option exercised.",
        "label": "Proceeds, Issuance of Shares, Share-based Payment Arrangement, Including Option Exercised",
        "terseLabel": "Proceeds from issuances of common stock"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities": {
     "auth_ref": [
      "r85",
      "r86",
      "r190"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow from 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 Maturities, Prepayments and Calls of Debt Securities, Available-for-sale",
        "terseLabel": "Proceeds from maturities and sales of marketable securities"
       }
      }
     },
     "localname": "ProceedsFromMaturitiesPrepaymentsAndCallsOfAvailableForSaleSecurities",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantiesDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product Warranties Disclosures [Abstract]",
        "terseLabel": "Product Warranties Disclosures [Abstract]"
       }
      }
     },
     "localname": "ProductWarrantiesDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ProductWarrantyAccrual": {
     "auth_ref": [
      "r237",
      "r238",
      "r438"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers.",
        "label": "Standard and Extended Product Warranty Accrual",
        "periodEndLabel": "Balance at end of period",
        "periodStartLabel": "Balance at beginning of period"
       }
      }
     },
     "localname": "ProductWarrantyAccrual",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/WarrantyDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyAccrualClassifiedCurrent": {
     "auth_ref": [
      "r49",
      "r233",
      "r234"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AccruedLiabilitiesDetails": {
       "order": 2.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 through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers. For classified balance sheets, represents the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Product Warranty Accrual, Current",
        "terseLabel": "Accrued warranty"
       }
      }
     },
     "localname": "ProductWarrantyAccrualClassifiedCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AccruedLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyAccrualPayments": {
     "auth_ref": [
      "r235"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of decrease in the standard and extended product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard and extended product warranty.",
        "label": "Standard and Extended Product Warranty Accrual, Decrease for Payments",
        "negatedTerseLabel": "Settlements"
       }
      }
     },
     "localname": "ProductWarrantyAccrualPayments",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/WarrantyDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyAccrualWarrantiesIssued": {
     "auth_ref": [
      "r236"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in the standard and extended product warranty accrual from warranties issued.",
        "label": "Standard and Extended Product Warranty Accrual, Increase for Warranties Issued",
        "terseLabel": "Accruals"
       }
      }
     },
     "localname": "ProductWarrantyAccrualWarrantiesIssued",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/WarrantyDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyDisclosureTextBlock": {
     "auth_ref": [
      "r240"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for standard and extended product warranties and other product guarantee contracts, including a tabular reconciliation of the changes in the guarantor's aggregate product warranty liability for the reporting period.",
        "label": "Product Warranty Disclosure [Text Block]",
        "terseLabel": "Warranty"
       }
      }
     },
     "localname": "ProductWarrantyDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/Warranty"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Abstract]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "auth_ref": [
      "r42",
      "r223"
     ],
     "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": "Long-Lived Tangible Asset [Axis]",
        "terseLabel": "Property, Plant and Equipment, Type [Axis]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesNarrativeDetails",
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "auth_ref": [
      "r226",
      "r473",
      "r474",
      "r475"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.",
        "label": "Property, Plant and Equipment Disclosure [Text Block]",
        "terseLabel": "Property, Plant and Equipment, net"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnet"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "auth_ref": [
      "r41",
      "r221"
     ],
     "calculation": {
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails": {
       "order": 1.0,
       "parentTag": "form_PropertyPlantAndEquipmentNetExcludesConstructionInProgress",
       "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": "Sub-total"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails",
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r16",
      "r17",
      "r223",
      "r452"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails": {
       "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",
        "terseLabel": "Property, plant and equipment, net of accumulated depreciation",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNet",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r16",
      "r223"
     ],
     "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]",
        "terseLabel": "Property, Plant and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "auth_ref": [
      "r16",
      "r221"
     ],
     "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": "Long-Lived Tangible Asset [Domain]",
        "terseLabel": "Property, Plant and Equipment, Type [Domain]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesNarrativeDetails",
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identifies item reclassified out of accumulated other comprehensive income (loss).",
        "label": "Reclassification out of Accumulated Other Comprehensive Income [Member]",
        "terseLabel": "Amount of Gain or (Loss) Reclassified from Accumulated OCI into Income (Effective Portion)"
       }
      }
     },
     "localname": "ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofCashFlowHedgesandDerivativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RepaymentsOfLongTermDebt": {
     "auth_ref": [
      "r91"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer.",
        "label": "Repayments of Long-term Debt",
        "negatedLabel": "Principal repayments on term loans"
       }
      }
     },
     "localname": "RepaymentsOfLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpense": {
     "auth_ref": [
      "r318",
      "r485"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome": {
       "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",
        "terseLabel": "Research and development"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpense",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome"
     ],
     "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"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpenseMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r4",
      "r15",
      "r99",
      "r101"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash and cash equivalents restricted as to withdrawal or usage, classified as current. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, 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": "Restricted Cash and Cash Equivalents, Current",
        "terseLabel": "Restricted cash"
       }
      }
     },
     "localname": "RestrictedCashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestrictedCashAndCashEquivalentsNoncurrent": {
     "auth_ref": [
      "r10",
      "r18",
      "r99",
      "r101",
      "r472"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash and cash equivalents restricted as to withdrawal or usage, classified as noncurrent. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, 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": "Restricted Cash and Cash Equivalents, Noncurrent",
        "terseLabel": "Restricted cash"
       }
      }
     },
     "localname": "RestrictedCashAndCashEquivalentsNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestrictedCashCurrent": {
     "auth_ref": [
      "r4",
      "r15",
      "r101"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash restricted as to withdrawal or usage, classified as current. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits.",
        "label": "Restricted Cash, Current",
        "terseLabel": "Restricted cash, current"
       }
      }
     },
     "localname": "RestrictedCashCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestrictedCashNoncurrent": {
     "auth_ref": [
      "r10",
      "r18",
      "r101",
      "r472"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash restricted as to withdrawal or usage, classified as noncurrent. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits.",
        "label": "Restricted Cash, Noncurrent",
        "terseLabel": "Restricted cash"
       }
      }
     },
     "localname": "RestrictedCashNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestrictedStockMember": {
     "auth_ref": [
      "r133"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock including a provision that prohibits sale or substantive sale of an equity instrument for a specified period of time or until specified performance conditions are met.",
        "label": "Restricted Stock [Member]",
        "terseLabel": "Restricted stock units"
       }
      }
     },
     "localname": "RestrictedStockMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails"
     ],
     "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"
       }
      }
     },
     "localname": "RestrictedStockUnitsRSUMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r25",
      "r243",
      "r314",
      "r450",
      "r467",
      "r469"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "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)",
        "terseLabel": "Accumulated deficit"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r108",
      "r109",
      "r110",
      "r112",
      "r118",
      "r120",
      "r192",
      "r311",
      "r312",
      "r313",
      "r322",
      "r323",
      "r464",
      "r466"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings [Member]",
        "terseLabel": "Accumulated Deficit"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue from Contract with Customer [Abstract]",
        "terseLabel": "Revenue from Contract with Customer [Abstract]"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "auth_ref": [
      "r153",
      "r154",
      "r167",
      "r173",
      "r174",
      "r180",
      "r181",
      "r184",
      "r260",
      "r261",
      "r431"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0
      }
     },
     "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": "Revenues"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome",
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails",
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerMember": {
     "auth_ref": [
      "r145",
      "r184"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue from satisfaction of performance obligation by transferring promised product and service to customer, when it serves as benchmark in concentration of risk calculation.",
        "label": "Revenue from Contract with Customer Benchmark [Member]",
        "terseLabel": "Revenue from Contract with Customer Benchmark"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "auth_ref": [
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r258",
      "r259",
      "r264",
      "r272"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.",
        "label": "Revenue from Contract with Customer [Text Block]",
        "terseLabel": "Revenue"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/Revenue"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligation": {
     "auth_ref": [
      "r256"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue.",
        "label": "Revenue, Remaining Performance Obligation, Amount",
        "terseLabel": "Performance obligations"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligation",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/RevenueAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": {
     "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, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]",
        "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": {
     "auth_ref": [
      "r257"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period",
        "terseLabel": "Revenue, remaining performance obligation, expected timing of satisfaction, period"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": {
     "auth_ref": [
      "r257"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in CCYY-MM-DD format.",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]",
        "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation.",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]",
        "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationPercentage": {
     "auth_ref": [
      "r257"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of remaining performance obligation to total remaining performance obligation not recognized as revenue.",
        "label": "Revenue, Remaining Performance Obligation, Percentage",
        "terseLabel": "Revenue, remaining performance obligation, percentage"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationPercentage",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/RevenueRemainingPerformanceObligationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": {
     "auth_ref": [
      "r414",
      "r419"
     ],
     "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": "Operating lease, right-of-use assets obtained in exchange for lease obligations"
       }
      }
     },
     "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RisksAndUncertaintiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Risks and Uncertainties [Abstract]",
        "terseLabel": "Risks and Uncertainties [Abstract]"
       }
      }
     },
     "localname": "RisksAndUncertaintiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "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]",
        "terseLabel": "Schedule of Accrued Liabilities"
       }
      }
     },
     "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AccruedLiabilitiesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": {
     "auth_ref": [
      "r327",
      "r328"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionAdditionalInformationDetails",
      "http://www.formfactor.com/role/AcquisitionAssetsAcquiredandLiabilitiesAssumedDetails",
      "http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock": {
     "auth_ref": [
      "r365"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of gain (loss) on derivative and nonderivative instruments designated and qualifying as cash flow hedge recorded in accumulated other comprehensive income (AOCI) and reclassified into earnings.",
        "label": "Schedule of Cash Flow Hedges Included in Accumulated Other Comprehensive Income (Loss) [Table Text Block]",
        "terseLabel": "Schedule of the Impact of Cash Flow Hedges on Consolidated Financial Statements"
       }
      }
     },
     "localname": "ScheduleOfCashFlowHedgesIncludedInAccumulatedOtherComprehensiveIncomeLossTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r132"
     ],
     "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]",
        "terseLabel": "Schedule of Calculation of Numerator and Denominator in Earnings Per Share"
       }
      }
     },
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/NetIncomeperShareTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable": {
     "auth_ref": [
      "r288",
      "r306",
      "r315"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about amount recognized for award under share-based payment arrangement. Includes, but is not limited to, amount expensed in statement of income or comprehensive income, amount capitalized in statement of financial position, and corresponding reporting line item in financial statements.",
        "label": "Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table]",
        "terseLabel": "Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table]"
       }
      }
     },
     "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": {
     "auth_ref": [
      "r288",
      "r306",
      "r315"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement.",
        "label": "Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]",
        "terseLabel": "Schedule of Stock-based Compensation"
       }
      }
     },
     "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock": {
     "auth_ref": [
      "r378",
      "r379"
     ],
     "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": "Fair Value Assets Measured on Recurring Basis"
       }
      }
     },
     "localname": "ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock": {
     "auth_ref": [
      "r208"
     ],
     "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 Finite-Lived Intangible Assets Acquired as Part of Business Combination"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": {
     "auth_ref": [
      "r208",
      "r213",
      "r432"
     ],
     "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 [Table]"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": {
     "auth_ref": [
      "r208",
      "r213"
     ],
     "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]",
        "terseLabel": "Schedule of Intangible Assets"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock": {
     "auth_ref": [
      "r362"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the presentation of foreign exchange contracts on the statement of financial position, including the fair value amounts and location of such amounts.",
        "label": "Schedule of Foreign Exchange Contracts, Statement of Financial Position [Table Text Block]",
        "terseLabel": "Schedule of Foreign Currency Forward Contracts"
       }
      }
     },
     "localname": "ScheduleOfForeignExchangeContractsStatementOfFinancialPositionTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfGoodwillTable": {
     "auth_ref": [
      "r203",
      "r205"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of goodwill and the changes during the year due to acquisition, sale, impairment or for other reasons.",
        "label": "Schedule of Goodwill [Table]",
        "terseLabel": "Schedule of Goodwill [Table]"
       }
      }
     },
     "localname": "ScheduleOfGoodwillTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfGoodwillTextBlock": {
     "auth_ref": [
      "r203",
      "r205"
     ],
     "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": "Goodwill by Reportable Segments"
       }
      }
     },
     "localname": "ScheduleOfGoodwillTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r14",
      "r35",
      "r36",
      "r37"
     ],
     "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]",
        "terseLabel": "Schedule of Inventory Components"
       }
      }
     },
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/InventoriesnetTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock": {
     "auth_ref": [
      "r366",
      "r368"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of derivative instrument not designated or qualifying as hedging instrument.",
        "label": "Derivatives Not Designated as Hedging Instruments [Table Text Block]",
        "terseLabel": "Schedule of Gains and Losses Related to Non-designated Derivative Instruments"
       }
      }
     },
     "localname": "ScheduleOfOtherDerivativesNotDesignatedAsHedgingInstrumentsStatementsOfFinancialPerformanceAndFinancialPositionLocationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": {
     "auth_ref": [
      "r239"
     ],
     "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]",
        "terseLabel": "Reconciliation of Changes in Warranty Liability"
       }
      }
     },
     "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/WarrantyTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": {
     "auth_ref": [
      "r42",
      "r223"
     ],
     "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": "Schedule of Property, Plant and Equipment [Table]"
       }
      }
     },
     "localname": "ScheduleOfPropertyPlantAndEquipmentTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails",
      "http://www.formfactor.com/role/PropertyPlantandEquipmentnetDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock": {
     "auth_ref": [
      "r331"
     ],
     "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 Recognized Identified Assets Acquired and Liabilities Assumed"
       }
      }
     },
     "localname": "ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": {
     "auth_ref": [
      "r162",
      "r165",
      "r171",
      "r203"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A table disclosing the profit or loss and total assets for each reportable segment of the entity. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.",
        "label": "Schedule of Segment Reporting Information, by Segment [Table]",
        "terseLabel": "Schedule of Segment Reporting Information, by Segment [Table]"
       }
      }
     },
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": {
     "auth_ref": [
      "r162",
      "r165",
      "r171",
      "r203"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.",
        "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]",
        "terseLabel": "Schedule of Operating Results by Segment"
       }
      }
     },
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "auth_ref": [
      "r289",
      "r309"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationESPPActivityDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock": {
     "auth_ref": [
      "r305"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of employee stock purchase plan activity.",
        "label": "Schedule of Share-based Compensation, Employee Stock Purchase Plan, Activity [Table Text Block]",
        "terseLabel": "Schedule of ESPP Activity"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock": {
     "auth_ref": [
      "r291"
     ],
     "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]",
        "terseLabel": "Schedule of Restricted Stock Unit Activity"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "auth_ref": [
      "r291",
      "r301",
      "r302"
     ],
     "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]",
        "terseLabel": "Schedule of Stock Option Activity"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock": {
     "auth_ref": [
      "r308"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of cost not yet recognized and weighted-average period over which cost is expected to be recognized for nonvested award under share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Nonvested Award, Cost [Table Text Block]",
        "terseLabel": "Schedule of Unrecognized Stock-based Compensation"
       }
      }
     },
     "localname": "ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": {
     "auth_ref": [
      "r213"
     ],
     "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]",
        "terseLabel": "Schedule of Estimated Amortization of Intangible Assets"
       }
      }
     },
     "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock": {
     "auth_ref": [
      "r143",
      "r145",
      "r146",
      "r147",
      "r391",
      "r393"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark.",
        "label": "Schedules of Concentration of Risk, by Risk Factor [Table Text Block]",
        "terseLabel": "Schedule of Customer Percentage of Revenue"
       }
      }
     },
     "localname": "SchedulesOfConcentrationOfRiskByRiskFactorTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/ConcentrationofCreditandOtherRisksTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentDomain": {
     "auth_ref": [
      "r149",
      "r153",
      "r154",
      "r155",
      "r156",
      "r157",
      "r158",
      "r159",
      "r160",
      "r161",
      "r162",
      "r163",
      "r164",
      "r167",
      "r168",
      "r169",
      "r170",
      "r172",
      "r173",
      "r174",
      "r175",
      "r176",
      "r178",
      "r184",
      "r458"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.",
        "label": "Segments [Domain]",
        "terseLabel": "Segments [Domain]"
       }
      }
     },
     "localname": "SegmentDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails",
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails",
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SegmentReportingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting [Abstract]",
        "terseLabel": "Segment Reporting [Abstract]"
       }
      }
     },
     "localname": "SegmentReportingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "auth_ref": [
      "r149",
      "r151",
      "r152",
      "r162",
      "r166",
      "r172",
      "r176",
      "r177",
      "r178",
      "r179",
      "r180",
      "r183",
      "r184",
      "r185"
     ],
     "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]",
        "terseLabel": "Operating Segments and Enterprise-Wide Information"
       }
      }
     },
     "localname": "SegmentReportingDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentReportingInformationLineItems": {
     "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": "Segment Reporting Information [Line Items]",
        "terseLabel": "Segment Reporting Information [Line Items]"
       }
      }
     },
     "localname": "SegmentReportingInformationLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r82"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.",
        "label": "Selling, General and Administrative Expense",
        "terseLabel": "Selling, general and administrative"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpensesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing selling, general and administrative expense.",
        "label": "Selling, General and Administrative Expenses [Member]",
        "terseLabel": "Selling, general and administrative"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpensesMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsImpactofForeignExchangeDerivattiveContractsDesignatedasCashFlowHedgesDetails",
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsAmortizationExpenseDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows": {
       "order": 3.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": "Stock-based compensation expense"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": {
     "auth_ref": [
      "r296"
     ],
     "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": "Awards canceled (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r300"
     ],
     "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": "Awards canceled (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "auth_ref": [
      "r298"
     ],
     "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",
        "terseLabel": "Awards granted (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r298"
     ],
     "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",
        "terseLabel": "Awards granted (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": {
     "auth_ref": [
      "r297"
     ],
     "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": "Ending balance (in shares)",
        "periodStartLabel": "Beginning balance (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": {
     "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, Number of Shares [Roll Forward]",
        "terseLabel": "Units",
        "verboseLabel": "Options Outstanding"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r297"
     ],
     "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": "Ending balance (in dollars per share)",
        "periodStartLabel": "Beginning balance (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails"
     ],
     "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": "Weighted Average Grant Date Fair Value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "auth_ref": [
      "r299"
     ],
     "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": "Awards vested (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r299"
     ],
     "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",
        "terseLabel": "Awards vested (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationESPPActivityDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Additional Disclosures [Abstract]",
        "terseLabel": "Additional Disclosures"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "auth_ref": [
      "r294"
     ],
     "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",
        "terseLabel": "Exercisable (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "auth_ref": [
      "r294"
     ],
     "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": "Exercisable (in dollars per share)",
        "verboseLabel": "Weighted average per share purchase price (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationESPPActivityDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": {
     "auth_ref": [
      "r309"
     ],
     "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",
        "terseLabel": "Outstanding, aggregate intrinsic value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "auth_ref": [
      "r293",
      "r309"
     ],
     "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": "Outstanding, end of period (in shares)",
        "periodStartLabel": "Outstanding, beginning of period (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r292"
     ],
     "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": "Outstanding, end of period (in dollars per share)",
        "periodStartLabel": "Outstanding, beginning of period (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "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": "Weighted Average Exercise Price"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber": {
     "auth_ref": [
      "r304"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of fully vested and expected to vest exercisable options that may be converted into shares under option plan. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Exercisable, Number",
        "terseLabel": "Vested and expected to vest (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue": {
     "auth_ref": [
      "r302"
     ],
     "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",
        "terseLabel": "Vested end expected to vest, aggregate intrinsic value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r303"
     ],
     "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": "Vested and expected to vest (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "auth_ref": [
      "r287",
      "r290"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationESPPActivityDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationRestrictedStockUnitActivityDetails",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationUnrecognizedCompensationCostsDetails"
     ],
     "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": "Options exercised (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": {
     "auth_ref": [
      "r309"
     ],
     "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",
        "terseLabel": "Exercisable, aggregate intrinsic value"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": {
     "auth_ref": [
      "r309"
     ],
     "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",
        "terseLabel": "Exercisable, weighted average remaining contractual life"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": {
     "auth_ref": [
      "r303"
     ],
     "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",
        "terseLabel": "Outstanding, weighted average remaining contractual life"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1": {
     "auth_ref": [
      "r303"
     ],
     "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": "Vested and expected to vest, weighted average remaining contractual life"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued which are neither cancelled nor held in the treasury.",
        "label": "Shares, Outstanding",
        "periodEndLabel": "Ending balance (in shares)",
        "periodStartLabel": "Beginning balance (in shares)"
       }
      }
     },
     "localname": "SharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShortMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates the sale of a borrowed security or written option.",
        "label": "Short [Member]",
        "terseLabel": "Sell"
       }
      }
     },
     "localname": "ShortMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsForeignCurrencyForwardContractsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShortTermLeaseCost": {
     "auth_ref": [
      "r411",
      "r419"
     ],
     "calculation": {
      "http://www.formfactor.com/role/LeasesComponentsofLeaseExpenseDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of short-term lease cost, excluding expense for lease with term of one month or less.",
        "label": "Short-term Lease, Cost",
        "terseLabel": "Short-term lease expense"
       }
      }
     },
     "localname": "ShortTermLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesComponentsofLeaseExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "auth_ref": [
      "r1",
      "r149",
      "r153",
      "r154",
      "r155",
      "r156",
      "r157",
      "r158",
      "r159",
      "r160",
      "r161",
      "r162",
      "r163",
      "r164",
      "r167",
      "r168",
      "r169",
      "r170",
      "r172",
      "r173",
      "r174",
      "r175",
      "r176",
      "r178",
      "r184",
      "r203",
      "r225",
      "r227",
      "r228",
      "r458"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business segments.",
        "label": "Segments [Axis]",
        "terseLabel": "Segments [Axis]"
       }
      }
     },
     "localname": "StatementBusinessSegmentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsGoodwillDetails",
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationOperatingResultsbySegmentDetails",
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementClassOfStockAxis": {
     "auth_ref": [
      "r20",
      "r21",
      "r22",
      "r102",
      "r104",
      "r123",
      "r127",
      "r128",
      "r130",
      "r132",
      "r140",
      "r141",
      "r142",
      "r191",
      "r242",
      "r394"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r53",
      "r108",
      "r109",
      "r110",
      "r112",
      "r118",
      "r120",
      "r139",
      "r192",
      "r242",
      "r243",
      "r311",
      "r312",
      "r313",
      "r322",
      "r323",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r402",
      "r464",
      "r465",
      "r466"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]",
        "terseLabel": "Equity Components [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]",
        "terseLabel": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "localname": "StatementOfCashFlowsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]",
        "terseLabel": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "localname": "StatementOfFinancialPositionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Comprehensive Income [Abstract]",
        "terseLabel": "Statement of Comprehensive Income [Abstract]"
       }
      }
     },
     "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]",
        "terseLabel": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "localname": "StatementOfStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r108",
      "r109",
      "r110",
      "r139",
      "r431"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans": {
     "auth_ref": [
      "r21",
      "r22",
      "r242",
      "r243"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued during the period as a result of an employee stock purchase plan.",
        "label": "Stock Issued During Period, Shares, Employee Stock Purchase Plans",
        "terseLabel": "Shares issued (in shares)",
        "verboseLabel": "Issuance of common stock under the Employee Stock Purchase Plan (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationESPPActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures": {
     "auth_ref": [
      "r21",
      "r22",
      "r242",
      "r243"
     ],
     "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",
        "terseLabel": "Issuance of common stock pursuant to vesting of restricted stock units (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number, before forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).",
        "label": "Shares Issued, Shares, Share-based Payment Arrangement, before Forfeiture",
        "terseLabel": "Issuance of common stock pursuant to exercise of options (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesShareBasedCompensationGross",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "auth_ref": [
      "r21",
      "r22",
      "r242",
      "r243",
      "r295"
     ],
     "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",
        "negatedTerseLabel": "Options exercised (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan": {
     "auth_ref": [
      "r21",
      "r22",
      "r242",
      "r243"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate change in value for stock issued during the period as a result of employee stock purchase plan.",
        "label": "Stock Issued During Period, Value, Employee Stock Purchase Plan",
        "terseLabel": "Issuance of common stock under the Employee Stock Purchase Plan"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueEmployeeStockPurchasePlan",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures": {
     "auth_ref": [
      "r242",
      "r243"
     ],
     "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",
        "terseLabel": "Issuance of common stock pursuant to exercise of options"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": {
     "auth_ref": [
      "r53",
      "r242",
      "r243"
     ],
     "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",
        "terseLabel": "Issuance of common stock pursuant to exercise of options"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity"
     ],
     "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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount remaining of a stock repurchase plan authorized.",
        "label": "Stock Repurchase Program, Remaining Authorized Repurchase Amount",
        "terseLabel": "Amount remaining for future repurchases"
       }
      }
     },
     "localname": "StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r22",
      "r27",
      "r28",
      "r104",
      "r189",
      "r191",
      "r394"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 2.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/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' Equity Attributable to Parent [Abstract]",
        "terseLabel": "Stockholders\u2019 equity:"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityNoteDisclosureTextBlock": {
     "auth_ref": [
      "r103",
      "r243",
      "r246"
     ],
     "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]",
        "terseLabel": "Stockholders\u2019 Equity and Stock-Based Compensation"
       }
      }
     },
     "localname": "StockholdersEquityNoteDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplemental Cash Flow Information [Abstract]",
        "terseLabel": "Supplemental disclosure of cash flow information:"
       }
      }
     },
     "localname": "SupplementalCashFlowInformationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TaxesPayableCurrentAndNoncurrent": {
     "auth_ref": [
      "r19",
      "r436",
      "r448"
     ],
     "calculation": {
      "http://www.formfactor.com/role/AccruedLiabilitiesDetails": {
       "order": 6.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 statutory income, sales, use, payroll, excise, real, property and other taxes.",
        "label": "Taxes Payable",
        "terseLabel": "Accrued income and other taxes"
       }
      }
     },
     "localname": "TaxesPayableCurrentAndNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AccruedLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TimingOfTransferOfGoodOrServiceAxis": {
     "auth_ref": [
      "r261",
      "r270"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by timing of transfer of good or service to customer.",
        "label": "Timing of Transfer of Good or Service [Axis]",
        "terseLabel": "Timing of Transfer of Good or Service [Axis]"
       }
      }
     },
     "localname": "TimingOfTransferOfGoodOrServiceAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TimingOfTransferOfGoodOrServiceDomain": {
     "auth_ref": [
      "r261",
      "r270"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Timing of transfer of good or service to customer. Includes, but is not limited to, at point in time or over time.",
        "label": "Timing of Transfer of Good or Service [Domain]",
        "terseLabel": "Timing of Transfer of Good or Service [Domain]"
       }
      }
     },
     "localname": "TimingOfTransferOfGoodOrServiceDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TradeNamesMember": {
     "auth_ref": [
      "r332"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof.",
        "label": "Trade Names [Member]",
        "terseLabel": "Trade names"
       }
      }
     },
     "localname": "TradeNamesMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/AcquisitionIntangibleAssetsAcquiredDetails",
      "http://www.formfactor.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TransferredAtPointInTimeMember": {
     "auth_ref": [
      "r270"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contract with customer in which good or service is transferred at point in time.",
        "label": "Transferred at Point in Time [Member]",
        "terseLabel": "Products transferred at a point in time"
       }
      }
     },
     "localname": "TransferredAtPointInTimeMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TransferredOverTimeMember": {
     "auth_ref": [
      "r270"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contract with customer in which good or service is transferred over time.",
        "label": "Transferred over Time [Member]",
        "terseLabel": "Products and services transferred over time"
       }
      }
     },
     "localname": "TransferredOverTimeMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/OperatingSegmentsandEnterpriseWideInformationRevenuebySegmentRecognitionTypeandGeographicAreaDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TreasuryStockMember": {
     "auth_ref": [
      "r52",
      "r244"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Shares of an entity that have been repurchased by the entity. This stock has no voting rights and receives no dividends. Note that treasury stock may be recorded at its total cost or separately as par (or stated) value and additional paid in capital. Classified within stockholders' equity if nonredeemable or redeemable solely at the option of the issuer. Classified within temporary equity if redemption is outside the control of the issuer.",
        "label": "Treasury Stock [Member]",
        "terseLabel": "Treasury Stock"
       }
      }
     },
     "localname": "TreasuryStockMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TreasuryStockShares": {
     "auth_ref": [
      "r52",
      "r244"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of common and preferred shares that were previously issued and that were repurchased by the issuing entity and held in treasury on the financial statement date. This stock has no voting rights and receives no dividends.",
        "label": "Treasury Stock, Shares",
        "terseLabel": "Treasury stock (in shares)"
       }
      }
     },
     "localname": "TreasuryStockShares",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_TreasuryStockSharesAcquired": {
     "auth_ref": [
      "r22",
      "r242",
      "r243"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares that have been repurchased during the period and are being held in treasury.",
        "label": "Treasury Stock, Shares, Acquired",
        "negatedTerseLabel": "Purchase of common stock through repurchase program (in shares)"
       }
      }
     },
     "localname": "TreasuryStockSharesAcquired",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_TreasuryStockValue": {
     "auth_ref": [
      "r52",
      "r244",
      "r245"
     ],
     "calculation": {
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury.",
        "label": "Treasury Stock, Value",
        "negatedTerseLabel": "Treasury stock, at cost, 136,402 and \u2014 shares"
       }
      }
     },
     "localname": "TreasuryStockValue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TreasuryStockValueAcquiredCostMethod": {
     "auth_ref": [
      "r242",
      "r243",
      "r244"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost method.",
        "label": "Treasury Stock, Value, Acquired, Cost Method",
        "negatedTerseLabel": "Purchase of common stock through repurchase program"
       }
      }
     },
     "localname": "TreasuryStockValueAcquiredCostMethod",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofStockholdersEquity",
      "http://www.formfactor.com/role/StockholdersEquityandStockBasedCompensationAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_USGovernmentAgenciesDebtSecuritiesMember": {
     "auth_ref": [
      "r274",
      "r445"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debentures, notes, and other debt securities issued by US government agencies, for example, but not limited to, Government National Mortgage Association (GNMA or Ginnie Mae). Excludes US treasury securities and debt issued by government-sponsored Enterprises (GSEs), for example, but is not limited to, Federal Home Loan Mortgage Corporation (FHLMC or Freddie Mac), Federal National Mortgage Association (FNMA or Fannie Mae), and the Federal Home Loan Bank (FHLB).",
        "label": "US Government Agencies Debt Securities [Member]",
        "terseLabel": "U.S. agency securities"
       }
      }
     },
     "localname": "USGovernmentAgenciesDebtSecuritiesMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_USTreasuryBillSecuritiesMember": {
     "auth_ref": [
      "r445"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This category includes information about negotiable debt securities issued by the United States Department of the Treasury which generally have maturities of one year or less, are interest bearing, and are backed by the full faith and credit of the United States government.",
        "label": "US Treasury Bill Securities [Member]",
        "terseLabel": "U.S. treasuries"
       }
      }
     },
     "localname": "USTreasuryBillSecuritiesMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/FairValueandDerivativeInstrumentsFairValueAssetsMeasuredonRecurringBasisDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_VariableLeaseCost": {
     "auth_ref": [
      "r412",
      "r419"
     ],
     "calculation": {
      "http://www.formfactor.com/role/LeasesComponentsofLeaseExpenseDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "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 expense"
       }
      }
     },
     "localname": "VariableLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/LeasesComponentsofLeaseExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r122",
      "r132"
     ],
     "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",
        "terseLabel": "Diluted (in shares)",
        "verboseLabel": "Weighted-average shares used in computing diluted net income per share (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome",
      "http://www.formfactor.com/role/NetIncomeperShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]",
        "terseLabel": "Weighted-average number of shares used in per share calculations:"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r121",
      "r132"
     ],
     "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 used in computing basic net income per share (in shares)",
        "verboseLabel": "Basic (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.formfactor.com/role/CondensedConsolidatedStatementsofIncome",
      "http://www.formfactor.com/role/NetIncomeperShareDetails"
     ],
     "xbrltype": "sharesItemType"
    }
   },
   "unitCount": 10
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=6359566&loc=d3e326-107755"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760"
  },
  "r10": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6812-107765"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121583591&loc=d3e4297-108586"
  },
  "r101": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121583591&loc=SL98516268-108586"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(d))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(e)(1))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r105": {
   "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=120395691&loc=d3e23780-122690"
  },
  "r106": {
   "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=120395691&loc=d3e23780-122690"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "http://asc.fasb.org/topic&trid=2122369"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=115929471&loc=d3e21914-107793"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=115929471&loc=d3e21930-107793"
  },
  "r11": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6911-107765"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=115929471&loc=d3e21711-107793"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22499-107794"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(3)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22499-107794"
  },
  "r113": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22694-107794"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22694-107794"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22583-107794"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22595-107794"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22644-107794"
  },
  "r118": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22644-107794"
  },
  "r119": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22658-107794"
  },
  "r12": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6935-107765"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22663-107794"
  },
  "r121": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1448-109256"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1505-109256"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1252-109256"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1707-109256"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1757-109256"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1500-109256"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1278-109256"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "55",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e2626-109256"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=SL5780133-109256"
  },
  "r13": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e7018-107765"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=SL5780133-109256"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1337-109256"
  },
  "r132": {
   "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"
  },
  "r133": {
   "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"
  },
  "r134": {
   "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"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=109243012&loc=SL65017193-207537"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=120380238&loc=d3e3842-109258"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "52",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=120380238&loc=d3e4984-109258"
  },
  "r138": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "260",
   "URI": "http://asc.fasb.org/topic&trid=2144383"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=6828210&loc=d3e70191-108054"
  },
  "r14": {
   "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"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=6828210&loc=d3e70229-108054"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=6373374&loc=d3e70434-108055"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=6373374&loc=d3e70478-108055"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6327-108592"
  },
  "r144": {
   "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"
  },
  "r145": {
   "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"
  },
  "r146": {
   "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"
  },
  "r147": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6442-108592"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "275",
   "URI": "http://asc.fasb.org/topic&trid=2134479"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8657-108599"
  },
  "r15": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8672-108599"
  },
  "r151": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8721-108599"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8721-108599"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r16": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(j)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8813-108599"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8813-108599"
  },
  "r165": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8813-108599"
  },
  "r166": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "26",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8844-108599"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599"
  },
  "r169": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599"
  },
  "r17": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r170": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599"
  },
  "r171": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599"
  },
  "r172": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8924-108599"
  },
  "r173": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599"
  },
  "r174": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599"
  },
  "r178": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "34",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8981-108599"
  },
  "r18": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e9031-108599"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e9038-108599"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e9038-108599"
  },
  "r183": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e9038-108599"
  },
  "r184": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e9054-108599"
  },
  "r185": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "280",
   "URI": "http://asc.fasb.org/topic&trid=2134510"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=121593590&loc=d3e4428-111522"
  },
  "r187": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=121593590&loc=d3e4531-111522"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=121611835&loc=d3e5074-111524"
  },
  "r189": {
   "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"
  },
  "r19": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "320",
   "URI": "http://asc.fasb.org/extlink&oid=121553693&loc=d3e26853-111562"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=121646688&loc=SL121648383-210437"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=121599878&loc=SL82895884-210446"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=116847112&loc=d3e4542-108314"
  },
  "r195": {
   "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"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "http://asc.fasb.org/topic&trid=2126998"
  },
  "r197": {
   "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"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=99380562&loc=d3e13777-109266"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=120320667&loc=SL49117168-202975"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760"
  },
  "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=120391452&loc=d3e13212-122682"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16212-109274"
  },
  "r207": {
   "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"
  },
  "r208": {
   "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"
  },
  "r209": {
   "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"
  },
  "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=120391452&loc=d3e13212-122682"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r211": {
   "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"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "((a)(1),(b))",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r213": {
   "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"
  },
  "r214": {
   "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"
  },
  "r215": {
   "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"
  },
  "r216": {
   "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"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r218": {
   "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"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "350",
   "URI": "http://asc.fasb.org/topic&trid=2144416"
  },
  "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=120391452&loc=d3e13212-122682"
  },
  "r220": {
   "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"
  },
  "r221": {
   "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"
  },
  "r222": {
   "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"
  },
  "r223": {
   "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"
  },
  "r224": {
   "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"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "360",
   "URI": "http://asc.fasb.org/topic&trid=2155823"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(d))",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "440",
   "URI": "http://asc.fasb.org/extlink&oid=121559207&loc=d3e25336-109308"
  },
  "r23": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "440",
   "URI": "http://asc.fasb.org/extlink&oid=121559207&loc=d3e25336-109308"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "440",
   "URI": "http://asc.fasb.org/topic&trid=2144648"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "http://asc.fasb.org/topic&trid=2127136"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68070138&loc=d3e11281-110244"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12524-110249"
  },
  "r235": {
   "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"
  },
  "r236": {
   "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"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249"
  },
  "r238": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(5)",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249"
  },
  "r239": {
   "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"
  },
  "r24": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r240": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "460",
   "URI": "http://asc.fasb.org/topic&trid=2155896"
  },
  "r241": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=99376301&loc=SL5988623-112600"
  },
  "r242": {
   "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"
  },
  "r243": {
   "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=120397183&loc=d3e187085-122770"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=6405813&loc=d3e23239-112655"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=6405834&loc=d3e23315-112656"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "505",
   "URI": "http://asc.fasb.org/topic&trid=2208762"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121556615&loc=SL49130531-203044"
  },
  "r248": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121556615&loc=SL49130532-203044"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121556615&loc=SL49130533-203044"
  },
  "r25": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130551-203045"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130554-203045"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130554-203045"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130554-203045"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130554-203045"
  },
  "r255": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130554-203045"
  },
  "r256": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130556-203045"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130556-203045"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130556-203045"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130558-203045"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(4))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130543-203045"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130545-203045"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130549-203045"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130549-203045"
  },
  "r264": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130550-203045"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046"
  },
  "r266": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046"
  },
  "r269": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046"
  },
  "r27": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "606",
   "URI": "http://asc.fasb.org/topic&trid=49130388"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(i)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r274": {
   "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"
  },
  "r275": {
   "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"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(A)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(B)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(C)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r28": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(03)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r281": {
   "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"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(d)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121326096&loc=d3e4534-113899"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r29": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a),(g)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r292": {
   "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=120381028&loc=d3e5070-113901"
  },
  "r293": {
   "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=120381028&loc=d3e5070-113901"
  },
  "r294": {
   "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=120381028&loc=d3e5070-113901"
  },
  "r295": {
   "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=120381028&loc=d3e5070-113901"
  },
  "r296": {
   "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=120381028&loc=d3e5070-113901"
  },
  "r297": {
   "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=120381028&loc=d3e5070-113901"
  },
  "r298": {
   "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=120381028&loc=d3e5070-113901"
  },
  "r299": {
   "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=120381028&loc=d3e5070-113901"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "205",
   "URI": "http://asc.fasb.org/topic&trid=2122149"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(4)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r300": {
   "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=120381028&loc=d3e5070-113901"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r307": {
   "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=120381028&loc=d3e5070-113901"
  },
  "r308": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r31": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=SL79508275-113901"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(g)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r315": {
   "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"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120383193&loc=d3e11149-113907"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120383193&loc=d3e11178-113907"
  },
  "r318": {
   "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"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=120406818&loc=d3e31917-109318"
  },
  "r32": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=120406818&loc=d3e31931-109318"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32672-109319"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "740"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(3)",
   "Topic": "740"
  },
  "r324": {
   "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"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=120385591&loc=d3e38679-109324"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r327": {
   "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"
  },
  "r328": {
   "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"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "37",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=121600890&loc=d3e2207-128464"
  },
  "r33": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=121647850&loc=d3e4845-128472"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=121647850&loc=d3e4845-128472"
  },
  "r332": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=121598580&loc=d3e5263-128473"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=121598580&loc=d3e5333-128473"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=121598580&loc=d3e5333-128473"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "38",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=121598580&loc=d3e5504-128473"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=6911189&loc=d3e6408-128476"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116859721&loc=d3e6578-128477"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116859721&loc=d3e6613-128477"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116859824&loc=d3e6819-128478"
  },
  "r34": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "30",
   "Subparagraph": "b",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116859824&loc=d3e6819-128478"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=120321790&loc=d3e6927-128479"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(c)(1)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=120321790&loc=d3e6927-128479"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "805",
   "URI": "http://asc.fasb.org/topic&trid=2303972"
  },
  "r344": {
   "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"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988"
  },
  "r347": {
   "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"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=121559654&loc=d3e5710-111685"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=121559654&loc=d3e5710-111685"
  },
  "r35": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "810",
   "URI": "http://asc.fasb.org/topic&trid=2197479"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=SL5579240-113959"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=SL5579245-113959"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=SL5579245-113959"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=SL5580258-113959"
  },
  "r355": {
   "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=121590274&loc=d3e41620-113959"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=d3e41620-113959"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=d3e41638-113959"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=SL5618551-113959"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=SL5618551-113959"
  },
  "r36": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=SL5618551-113959"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=SL5618551-113959"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=SL5624163-113959"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=SL5624163-113959"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=SL5624171-113959"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=SL5624171-113959"
  },
  "r366": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=SL5624171-113959"
  },
  "r367": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=SL5624171-113959"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4CC",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=SL109998890-113959"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=SL5624177-113959"
  },
  "r37": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=SL5624177-113959"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=SL5624177-113959"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=SL5624181-113959"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=d3e41641-113959"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121590274&loc=d3e41678-113959"
  },
  "r375": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "182",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121582272&loc=SL5629052-113961"
  },
  "r376": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121577181&loc=SL110061190-113977"
  },
  "r377": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "25",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=121577467&loc=d3e76258-113986"
  },
  "r378": {
   "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"
  },
  "r379": {
   "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"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(7))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r380": {
   "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"
  },
  "r381": {
   "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"
  },
  "r382": {
   "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"
  },
  "r383": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r384": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "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",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r386": {
   "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"
  },
  "r387": {
   "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"
  },
  "r388": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=121572278&loc=d3e13433-108611"
  },
  "r389": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=121572278&loc=d3e13467-108611"
  },
  "r39": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r390": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=121572278&loc=d3e13476-108611"
  },
  "r391": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=121572278&loc=d3e13531-108611"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=121572278&loc=d3e13537-108611"
  },
  "r393": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=121572278&loc=d3e13537-108611"
  },
  "r394": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=75031198&loc=d3e14064-108612"
  },
  "r395": {
   "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"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r399": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6676-107765"
  },
  "r40": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r400": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r401": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r402": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901"
  },
  "r403": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=6450988&loc=d3e26243-108391"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=119993939&loc=d3e28555-108399"
  },
  "r405": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121603541&loc=SL77918627-209977"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121603541&loc=SL77918627-209977"
  },
  "r407": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121603541&loc=SL77918638-209977"
  },
  "r408": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121603541&loc=SL77918643-209977"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(3)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918673-209980"
  },
  "r41": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r410": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918673-209980"
  },
  "r411": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r412": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r413": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(1)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r414": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(2)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r415": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(3)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r416": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(4)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r417": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r418": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918701-209980"
  },
  "r419": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "53",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121568110&loc=SL77918982-209971"
  },
  "r42": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r420": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/subtopic&trid=77888251"
  },
  "r421": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r422": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r423": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r424": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r426": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r428": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r429": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r43": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r430": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "910",
   "URI": "http://asc.fasb.org/extlink&oid=119991564&loc=SL119991595-234733"
  },
  "r431": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.L)",
   "Topic": "924",
   "URI": "http://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856"
  },
  "r432": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "926",
   "URI": "http://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959"
  },
  "r433": {
   "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"
  },
  "r434": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(10)(1))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r435": {
   "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=120398452&loc=d3e534808-122878"
  },
  "r436": {
   "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=120398452&loc=d3e534808-122878"
  },
  "r437": {
   "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=120398452&loc=d3e534808-122878"
  },
  "r438": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.15(5))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r439": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.4)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r44": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r440": {
   "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=120399700&loc=SL114874048-224260"
  },
  "r441": {
   "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=120399700&loc=SL114874048-224260"
  },
  "r442": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(26))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r443": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(27))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r444": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04.9)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r445": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "320",
   "Subparagraph": "(b)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120252992&loc=d3e62557-112803"
  },
  "r446": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "405",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=116652737&loc=d3e64164-112818"
  },
  "r447": {
   "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=120400017&loc=d3e572229-122910"
  },
  "r448": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(15))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r449": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r45": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r450": {
   "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=120400017&loc=d3e572229-122910"
  },
  "r451": {
   "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=120400017&loc=d3e572229-122910"
  },
  "r452": {
   "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=120400017&loc=d3e572229-122910"
  },
  "r453": {
   "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=120400993&loc=SL114874131-224263"
  },
  "r454": {
   "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=120400993&loc=SL114874131-224263"
  },
  "r455": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(22))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r456": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(23))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r457": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(9))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r458": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4H",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438"
  },
  "r459": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121643868&loc=SL117782755-158439"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19,20)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r460": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121639165&loc=SL117783719-158441"
  },
  "r461": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121639165&loc=SL117783719-158441"
  },
  "r462": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121639165&loc=SL117783719-158441"
  },
  "r463": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121639165&loc=SL117819544-158441"
  },
  "r464": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r465": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(1)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r466": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(2)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r467": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(i)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r468": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(ii)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r469": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(2)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r47": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r470": {
   "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"
  },
  "r471": {
   "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=120402547&loc=d3e617274-123014"
  },
  "r472": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "210",
   "Topic": "954",
   "URI": "http://asc.fasb.org/extlink&oid=120413173&loc=SL116631458-115580"
  },
  "r473": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Subparagraph": "(d)",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99779-112916"
  },
  "r474": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99893-112916"
  },
  "r475": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=SL120174063-112916"
  },
  "r476": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r477": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r478": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r479": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.2)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r480": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r481": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r482": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r483": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r484": {
   "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=120402810&loc=d3e638233-123024"
  },
  "r485": {
   "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"
  },
  "r486": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b"
  },
  "r487": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r488": {
   "Name": "Form 10-Q",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "308",
   "Subsection": "a"
  },
  "r489": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1"
  },
  "r49": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r490": {
   "Name": "Regulation 12B",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r491": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6676-107765"
  },
  "r50": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r51": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29,30)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r53": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r54": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r55": {
   "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=120391452&loc=d3e13212-122682"
  },
  "r56": {
   "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"
  },
  "r57": {
   "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"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669646-108580"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669646-108580"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6676-107765"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669646-108580"
  },
  "r61": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669646-108580"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=d3e637-108580"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=d3e681-108580"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669686-108580"
  },
  "r65": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=d3e689-108580"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL34724394-108580"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669619-108580"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669619-108580"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669619-108580"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6676-107765"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669625-108580"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669625-108580"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=d3e557-108580"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121640130&loc=d3e1436-108581"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(210.5-03(11))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&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=120395209&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=120395209&loc=SL114868664-224227"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(24))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(25))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r79": {
   "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=120395209&loc=SL114868664-224227"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6676-107765"
  },
  "r80": {
   "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=120395209&loc=SL114868664-224227"
  },
  "r81": {
   "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=120395209&loc=SL114868664-224227"
  },
  "r82": {
   "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=120395209&loc=SL114868664-224227"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.7(b))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.9)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3151-108585"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3179-108585"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3179-108585"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3213-108585"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3255-108585"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6801-107765"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3291-108585"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3291-108585"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3367-108585"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3521-108585"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&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=121586364&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=121586364&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=121586364&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=121586364&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=121586364&loc=d3e3044-108585"
  }
 },
 "version": "2.1"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>88
<FILENAME>0001039399-21-000022-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001039399-21-000022-xbrl.zip
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
M@LT+(YK;G$1Z7<+1'#\I@@".[6!"=GS2AVRRC#IXUJ"%$<YL)I%>EYB*\Q;
MZ& <@8DY*)-LS@:IZ!R$6APQS7P2Z76)S#"["+(PDXP"JF1 !)&,<C)KC#HM
MC,AN>1+IM<D'(+),G *M $,(42FV@UE8PR;0X^W)YQ9[X'R95N^D2N,K"RF/
M^>/T!E=>^!<*4;$J@%*1W;Q$#=G:D- I'[7Q#9HJ]+C?2U1K/%6'L=49OOGS
MM-8M^XR(G0Q';(T&7YS\#?S_3"O^I%XZ.,+!F\\U<+Q>_<F@?U3KK TPC5YU
M1@?3%OYL@X:#T8-U/.P/IC<\,P!U6?2#-8; @DY;C4(Z=$)E!Y)2$*Z.Y$ )
M[&^-30V*$Y=XGBL\SR9"SBYE70J2] X\>731):^RT2FCAR9-PU[B^>IXWL'.
M.^QMTU&'T9!/:M72=>R=U$(E)P.F:X_[SW96%M%^!U5B2"*HX %<G4I9BLA
M45BR&9=XGU>\-Q)M KQW4GE#&,&KXBM%T$E*J62)-B_9PF*B;4:^G/'%3#07
MCE3!!^4!LY5>&@_9:3^+TD'-1-O?NLY/#LC;!_:C-*X6/MRB1)VW&+N+N<0H
MBNQ4YD"K6" 5$8WURL80@L[.?S[P.L^KKI=8GALL?Y]=_F1A^D]@.9HB"H:"
ME@S8"-$IC122H^@R$X0&8/GJ*%(WB**Y)AQW \LF@'$DK=4V ;KBA:B6V1E?
MJ\Z8<%8$@ULW;Q">RNG/DV&G1\/AH_2?D\YP//IW <O_ZNP?/!]0ZM2+5NAM
M)]%PK9=N>/1"\O\?7_(GIE?J'+PD25I+T&Q0M"[)0(8"OGC,9PRP8F<IIA]B
M0A<%]0V-NWCJ#Q:V/.ITNYTWU'W;Z7TQ*#/NAPLG?/?0C*F>ID2C,$:P1J &
M'1,605%#K9=R)U7Y2JYP"WO[9YYH[!D[O<[1R5%#C 1$,JA=4N0"TQ$,PB 9
M(R*"*FDZ!+V4^U<>_H2%/:)GG;>4UWHL@_T.N_I'PR&-AG^>3JA0%X>?C89S
M,ZC;/Z:\0^F@U^_V]T^WZ@9G-UY;Z9HP4VL2%[#99&O :1M9J.S]7?)6&67<
M'7<L"P.>F;B[3X.E.K>:1"A1!O!1Q;I1GW(QRVP$8VYIG:X?8-,H:HNZXSAG
M>- Y;HIELE84E97+BCQ8$;TGJ734)DD.4()>6J;F V?V5DD#%G)@;*B#A=FA
MYAA8@A08%62-2ZMT_>#:'&0:; Z>#_IU@)KO]R>F-^S\&F*8M)6A./1!>ZQ;
M5$3I#42;%?LTXR>%OY>&J?'8F;UM<LY("]XZK2V(C%$6E*F6%PC%&K-D3#>
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
M'&PR%%44 J2*L03)CI "*4BR":LC%@8R3<F_):SK9XP@'RUH"9B43^ $A5+
MQ&9-HYL]=;H+^8SD?5 E%27K'"@*WL9@LL@>?93:-:!P^%V0DK4)J4ACO 7P
MA3 X;8T-44A?YSLVH$+XLN#EK>RY$8R$X)-+,4 HNDZ6$QCJC'SCO6G"#D3S
ME&B9MUIYUP>4%#%#K#M=)@W1*&\H8/+6%&D]B"9L\S%/5&%Q@>(2>._!2FTR
M(%N4A!:25EYR0$(!&@64!9,-"P-LCE1"5!  ??&QD':4$;053=C/<5G3Y38!
M$X6"'.M8I9!0E&$%1EMGU$<=$KN$1@&F$?1@)N4?KG'GT9)+36ES9)BAY.QU
M\:X$9XL0'F.Z&X!9^)HNU[@=$@,FY6"<!5,+N7C(A%;F:'*R*!8C4FVXC"@(
MTA+()*5!)8UU1T8=E19*1G#-XOZ-K;O0%,Z ;/6M4\ZF6)-/WCM1D'04.I$H
M/B_1,@^<95[00E0X.,P4V0N !HL>DD])R)B32 N2J9Q[M-QL39?K0XL-,C@.
M2D+)%AQA!"V#T#EKXZ+T^LZB95X$Y)5-4A=GA"Z06)5S2-YHAR0R$C:+_R]&
M88ZF\(8B+8(0MHX_@RH4C9>LX45IDZ009@F=)8GXZCHB2MHZ&X3)M794B-+8
M&%U.'$XJ:A;E;$C68:950J[1817, B03SN(!+?!?IA8,D924U:HT"CH++ZWH
MO"@D2^#P !+EJ)5WM0"DDQ$++D@FXJ[7=+D^O"A52S^2,9E#!8@Z(/B2B?^D
MX%#Z1N&E$>,7LR@ <8T<U%$);/C9P " ,K'$8'5"!;KNV]BL^+(11*+9>/%.
M>*%=-E+7E4<R%#8R8'T$(I;M8DQV:+:("JLQV5"$0(0$4-/1X%$F\&2C=8T2
MT<([;';5/C -!TL9LLL>04M#B7\G#[%9"K7X<;=,*JD@#;#%,\+&6L:?0DG:
M12U"LY+W"Y\\QY*#MRE'FSQX$9$EIC%PV&0T0&Z ;C5HW6$#5BDUQ2=@T#(J
M2\9J!0%5S")YIS F3ZJD!GCP)6[OHG>4H'UAMZC8[H(+SB,Q@E-!YYAZI@;8
MV[D*)A=>B>8%M\5$DT :#%F"!^E-)N.,]MFD3$V8);Z$RFWE5SF6EI!+46!
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
M3F^TUN,;?*M>=I,MQHR6DD4,'FPNAIVY2S*0MCY$;2!!K;ZY!-ABK)^>#;K
M>H]9JTS"UDT$@Y)LP1P5#CN*%$V8KGF;Z&JDC#73?Z<<J0(L8PT^BVH_7$S*
M6"F;%%,VSH+<"5(;C&>75()RP0+_P2"$B>"++C+E)< 6Q47-:"*Q9U%[BB9Y
MAA8J5#Y+"PI%D?Q;$RH.-<A%S2CM60)R),5^R1=FM1:3PKH]38J8 NKE--$;
M!MCF6QHL*OTQ5E@EF>*J ""*\K+N2U]D""0)99.VU[G]E/H26'^3G]76,FZT
MBS9#=#%8FQT:(R@E(MV$U;9+\?[-8NH,E((R)CG@P"EXY0-$Y90V K2*#>(=
M2Y\T9WP'7"K&DP2A''B3,13IA2U&45+9-VF+Q:5/FB=@&8Z4-#KOB<D.@O&0
MP9+)+AHM4B/J(2[%^S># 83HE&!KP;8C:$2AP"3IE")K4S -HAPSFV1T_N"G
MU-\?X/%!)V%W\M#4/^F-!J</=EXM%I71WC!)51:\]J"<\VB4R )!*B^"798C
M7&+F"\PDAD,I4:/*%DAS=!-*22I)*[.)I0D#VW=4<CI[DP"QR! A1>4366-S
MR,KH&,VBU89;/"<QHQRL5CE&EY*R#K+-OA1E#?JDI#<QVP6#S8(YB5GM) ]9
M&N=,20Y"JND1CF6U4R4Z]%(T #-W5'))8DJ%@BN^ $>)WOGHA";V'-R_9M&R
MXK-R$H\W%HM;@"C10#'DG80,SFM5A'$BF)*9)S9IOM#<.HE%PXS1I3#S1 6Z
M0!$IFA H!IUL+LG8)LQ@O*.2BQI<SJYH9&VWLE8')FFUD\E"D:HTP+W?;2<Q
M&VZA8I 2(P,B>DC:^)QK^4B.(E2H^Y4O&&P6S$G,: YAEL7KNN^O%9" O"TV
MA!@%&9#>-0$S=U1R3CLA2F"_[CD:]-&+C%# N*2,0FA"$80K2N[E]L\/6L[A
MI.$9%3XP 7T)R@?/<$&#8(4LR9:$F&1NTNR9N742?P/81F)&Y!R]K?O]&050
M4BA!HX7H$Z&.N2G;(=U!R<4"( QZ  , S YSMJJ D%)E9Z )R>6[[21FM*&)
M9S9!P7($08#!8!2Z2)&L3D4F6K0 =,&<Q(Q*3HO".-"H3 !(RGI52)?$)H<C
M4*D6*))8-,E)6PA2,CD1@9/92\7:;K//PK$<FY!<_H;DZN%'PPX^Q\0/2 N\
M$G%&006PLEMO#!D)12E/67AIM%=:R81-J:8VGPA:_-7P["N,$$PZM"7V'12M
M#0:,]T6ZE-P"I#*^#S[-%"+:D$L56A% ,J#C;PFEES%%I1<@U+@[7F1&&4U?
MK,:@8F3M]UIZG[0'%R+S1]N<33'G$T&+OV#=Z,2. ;.@0" %Q5"B*]$P%0EU
M%^^[!I]&"C%SS($B9*I++'3R7A8I/$:CG*C;332?"DRCR/_>6DC7,:.YUP&M
M+,(%3$P<"T7O&40U\:F(?&S"2HLY@\WB1QW&1ZO01$6.(##/\#X8$0UQ>R*X
M)A2_^'G,-%)R0-8*%IY""A"3\40L')_9STLE[ )-?UY0)S&CE1;29$>&@XD0
M0)00O(N06/TE.D2Y !'J(CN)&6$FQ&AC"D77O72E86)A94!=%'B'J0G%H&?N
M)&94ZR%X9:3 #(9 )!6]<*SLOM9BC%$T8?KS/$^BK8=73P;]XX4L0F,A1X_6
M)VT"D''H(#@KM%#%V)*:,* QMP/@BXT<@*"HJ"Q=,)"\]W6GH0Q)AL+@44W9
M]/3.RB_F)$J*+M=UE4[YJ%-QNK"8DD2."QO@\)=N8V8S*0!3S$H;CQ+ 18Q
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
M% '18I. ":<=LCRX(+>VE815C!;E85F55!L9T3*BO4Q6D8QHTR+:F$5"!GU
MQ@ #G4]!L1'1A$ZYA QQGFKJTS$ZQ4E$M+DMP"4G%!DUY'8"JP*N%FTZ/N,=
M$_TEL4>I1&7;/^CP/-_P0JU<JWU#\2C>O3O8^>O@W4'S8/^HLE/?JQPU&[O_
MY]^-=WO[AT?___\GHU+\6=G_\/&@>?RD6W"^ 2G="O"XSB]T V?6=VR (_HV
M@U:EW=*FU2X*0[^>21:_[OHZS;P%XN3O1,(5R>A]5X[Y4E^EZGKS;#JM)]M?
M2T*_Q-*K[V\F5LX7. /!/[^7)P,'$I!B!A!(<23X%@.IM =.6D%<",1:7E2]
M%W@-JZYF)%I+)%IB#=F,1/,AT=C5("Q#2AL#E)00T$ %D,9;@#S$DOJXM*B$
M1+@*Z:+2%)<HNF5UJ%UOZ-VD?9'C75Z4#R5QO!M+(P/1+$!T+Y<'%88[ZP4(
MC$4@8CP5LI8:" ^%$M@JA.'6-B55RN<^I)N#7DJKOLLA$5E]%Z.^$WD\M"%6
M*0IL0!K02!N HM* :-] +S F5+JM;<:J9/XHV9)&OI2?1XS\E)?=7J&'W5 9
M^-Y%I=V-[[S+(#:,ZI)NN(Z,H]7O#W7'^C@X_7PXYR5)Q[MNY[09A;7GS2#C
MU2QX=2\I"#%>6818G#DI[Y"2'!@:$!!(!H$51\C3K6U5Q7P-'3!9;Y?'-K+>
M+D!O)P[SZL 1BRKK DUE[(,$DL/XJPP4IN(&$+JDMPRM87;2%:$9=\=Z>_ZK
M[PP?[$1E8V?Y9WH/;T21$6@6!+J7&(1X(S36%G#.*:"46& \,< XHX-6'GHN
MMK:1K'*:JZBLK^XN\3QOUMWY='<BN;FPDD', =0X .HTBNR!>$"#@5!B%T47
MV0.&5<7+I+N;Y:7XH7K*W+L>FV#(++UHRLA[>I51:194NI<AQ$LD/88*2)P2
M%$&#@624 VD)441:"%E$)5%E;%'!WMD743X57GK1E*S"\ZKPQ(D-B"C3W ,<
MN$XYA@-0#G& .>04(^Z9B"K,JP(NJ@!LV=P2JW'NUSZ,U)['.[&YU:F7L>.1
M-VCG0ZA[.444UL81ZD"@Q !J+ 9:, 4<1]9@J@GR<&L;45[E=%'E(DMS2G:!
M3HW-5?EE;)9DE9];Y<>DQ"H+C3,<("TIH,@*8 0W(,J14R=Y2HL:59[1*A-S
M'XQ?ELJOU?'&)ZC*1$Q&V_?[=ZSE-FXC1VJ4F[=,[/CFK$HS MF]#!\:<B@I
MI  I)5.P!@/:2 )0)#1*>!N<EUO;&%>)RM$:ZZN[2X[6R+H[N^Z.20C#"D-C
M'7!*($!%"$!2+D!0/$A%N0Z01MVE527*5'QI TZMW\N^GH^6E(([/$CA/&$1
MY3S.TP+1Z22)0$(*81P$5G('J$,8*,LA()AZ'4*<TC05=*FJ4J5FS&$;*\<A
ML@XO6(?'9,(8;Z$F"@1J(YE@*@"%20 !!D*@\!PRN+6=#IF4J2;3!K@L$F\&
MQ5F2;H[>*".Q>&+K-]LX,\+2ETEJ :6"A&$+$(\_* L.:.+C%$;0(6VD0%!L
M;1-2I;),A^BS?V+EN$56XX6K\02[$$@YY@D0WE) O7! I33N(4A-I?8:I;(+
M6%256L/#)66F%S>57K*/HA148F3?[,;_6H/^3L<5XIFT<C(<S01'USOW\YIC
MXZ% @#LL 146 JV9 IXQ$H1EA@:<8LJ07%2\1G98E$^AE^BPR K].Q3Z:B+K
MGW?."0E@X"D$*S(-*3$$BIK O'&"(Y\4>@&%Y,KGO5BA(-$%N2PV-U)LN<&A
M&9*F@J1[B4B-98X&KX%R0D6.X1!0PA! M27,.DB]3P?B$*GRA6W/EB8J=(%^
MC<W5]>5&A69=GU;7Q_1#<^L%(AY8CJ.NTR" DMP"*BGVG&//#$RZKJJ(D%71
M]7F='XM(.K\*&KW^:?K+S"N/!EW[Y:S;CKK0'Q4H\?\=M@97L]6)R!5*EEBA
MQ+7ZEVU]E=#0__QKEW7GNC5XX2YJU_HZ>O?M*T"Z_S4ODA^\4/+%[L5%-WUI
MA()JY7]^1K'>^][1F>[YA5"M@_J;'PG535,*4'JO>XW>T4 /O/M;MX=^_-6W
M1 MFHO4,HG4\J.W>$JU=!4_^[QFT%W]W]"<U;%P<7IPT=V*;OWRO7QRPX_,/
MK'[QGU:]^?';\:=]VFB>G=>;)[&=-?I_K_?I9VF-0HI*$+R1@!(9@"+4 DD$
ME@Q&M4A'B6>8/K-9Y7GZK-;TL5&ZG#@-&"IV#2@"6GL%K/""6PN1=6AK&[Z"
M\.&1KP=_J%SJ7N5K$NR8IT1LS71Y@^CR4VLIDB^UDCZ)??T$/?W%K9K/]E!,
M(&(!?_V=X>"LVTL'\S(23H6$]FDD/*^WXG>1QJ?C;R?-_[1BF_%Q\Z15/S]+
M_6$G>_M7]>LXHG@?_=_K#Y\A"L)CZ0 7C@#*,082>0LX@IJ$H+#G<MJY-,<2
MFN?2"L\ES* B 3/ ;7*8.46!<MP )3BQ1 DG15Q4XUW5"'SIOV<LK3<3K*+O
MI/MG904FXT&_/\P3\84FX@'^+#'QRF,"('8&I)Q#P&@- 0[0*ZHY=TBO!*HU
MAH/^0'<2G\BSZ:5F4Q0TL>DD%*9:IC-1<389PP%1WE.-H48\XIH05<%DE9'G
MP%H4Z90X]B($+4^_%Y]^L:VG\;U?OM7/OZ#:WO%G9"A%/B(:2MD/J:8:&()2
MHN6 O*%(^'14>!F3"^8E<FUFE610**PP$#2H: =H"G00#&@BB9"2&"UL@7&4
MI,CNARDVGZ1NK4+0!>)UQW#R"T?)IA^2F#TVZ$FU*SR/.3)@6GT;1P%Q:YD2
M/H# .034.@@TM!8@)8T0 2J4S)M2Y6?(9Y?*$L:3U7*Q:CEYVCG*PCH," P4
M4(,TD!C:E$2%80T5L\Z63"WS1N_6=K/G=7_8NQIM]>I!D9.M6D+WSJBI$^PU
M\]:I%/9TS%MCR^*[VO[?AU<GG]REP90W]@[/CV-;CC_M?SNYJ*%Z'*^3\],X
M5CO?&I\^DN-S^_VX^?=98^\LY4V"C3U+&LT=G/I7W_F,N/0X1-W7)J0XO8"
M44X"PAE22AG!<32($.%5"A\>&7@Y4_S:][I.]\_R=%NAZ?;ML_2($L<,0$4P
MN(SF4K24.##>"8<-@]Z%M#4J,<)_/F45S6'^K.QQKG^4ZVS$/37++&PF+1L9
M1]<'5Y\-A?'_3#2*D"M29T.@5-00SB@DD@>%5:IM7!7D(17[9SZ#N72E1; \
MUM'4RV+6UYGT]6I27YDDC" .&/<ICP/A0*9\41%IK<=$>T/\T^O8>IRT+'^9
MKYW8Z#3@NEVYU"T'6IV*U9>M@6[G/%$OQQW&4GD?A7+0V;T1R81;)V/3K%QB
MY[.W2%/F/4#(1(:M88BFG14@2I PS[&0:?=>(5:-1EV)W#K9VUI&/I$5^85(
MQLYG20(+-/EB0[0+J)0>2&8QX%QP2R1$ =JHR)!4Y2-&P<K[9U>%8E@[O!BV
MT^F$2K=((66[%Y<]?^8[_=977VD5&5IS+JD7I!MC"14Y9W8GY7.30/==MY_2
MYC9"4W_/D#459-U+4FD(E@))#0P-,G*/^,,PXX%''B*!'#.<;&V3*F)SU]#(
MKHS2ZO0RF$?6Z=^KTV,:0BFB7& (N.(I'S:F0!,=/P4%/3+!!TN39U+*-<R'
MO8(DQ/G0LJW!9CDXEK,[TH_=C)^FP*E#/]"QL6Y?]SIQ1/L3@MJ[D5.&IBF@
MJ;YW+WLE@1I;2 +@P4= XI  C1T&TD%%&?0*4713;Q2JA]EFGK]MDKT<Y=7F
MV<E&UN8R:/.8:'@C,/<,1N/!8$"A#D!"; ##$9<#T9J95$J4LVHT,<JAS9M7
MW+S_9):A7..\I/Z/R<10^X6H,DI-A5+WLEFF@D"!"P8X1\7VB@+&80N,)XY*
MZ* @>FM;<%YE\V>XFU8]5L@#LKDJOP3W2%;Y^55^3$R$XII'W08J0)[\'@IH
M(3VP+@K2$(RHAU'E*:U"25=%Y3<ZY781MOQ\*O/,#*0W77Q-XJBX[M"T_9W
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
MEML=MLV*/9JFR.YOH"TW0Y_C#F8!P7L%*1'U+K*2"'U1SBF$2 ,IDR <I$I
MXY%-1;#E0[/N^25S<Q!1>77S-S"5K)MSZ>:8H##G'%'4 Z)E*E"?ZL0:$S\)
MQ8(RG.$0+0DR5SGK' VTC@Z5QN#,]VZ]*95_W!*4?U8K'9\/CBV-I11"J'<[
MW?N>Z R,LP#CO?J)7%OE.)(@0!;AD&D)I)<>!"4E]8P8;).+1>#26V[9Q?*2
MS*4?^QL_9<7]O8H[9C3&662%U,![20"-Z J,M 8H+0,FVB')PM:V>AB3]WQ"
MDYTMZ^EL*:B,\:';\R-B,]#?Y\N.NKD[\<N,P1EOP(_R4[<ZPSBRMSOTW4[_
MKT*L-_<UDU!KK4ZWUQI<C8S)G8Z[_Y:;HJDU/SCKNK%O/._P3X?-M4E2)9&.
M"!PD8)+IB,W: PWCCTBOK)?""4ML$=TCR=PQTSFZ9PTQ99G1/1E32HPI8[ZG
MD'$<!@>TQA90@@E0UBB C-94,D&T\D7<T *2'.:XH8US<[WO=;^V^@F6HJ[/
MSPI7UFPN-?&+X'MK.?_E.SYGD)P64#],DC1%&8/4,:"0PLF CB3-80<"\YPH
M[#QA>&N;5/'"DL9FWU?YE'CY3"LK\=Q*/&9%A'K/*47)"R8!118"HR4'F$0S
MBT-'0N#1TJI*5'XE7@/>LWK>L+I_*E3Z]UJG91N'YU>AF[K[Z[)4+)/OQ6F9
M#]O,N$!\G&1Y&L<%'ND !(044"LCR[/4 "*$T,(:%IQ((>15CC?MH%T&N QP
M+\:%,\#-!7!C!DR)5II9#KP@ 40J+(&"'@$4># D6(,]C0#'JG+^4@C9+[AQ
M?L$Q/ZY<^EZE?Z9[?K9B" ^3?) X/5QW:-K^J=E3:F2=HU3"<[TS"QO/9WS#
M&JC72N?D_4OW6[8R3[3Q>O*P]:!:[WWO*&'G8FU*_".MVM>]3ARL_NCKBDEU
M1Z]@IE?/H%=VTGZ,HV^#4A8XYG0ZWBB QH$ +J2$4CL=I;:U#5\MS'I<(0,Q
M8T]YNC8#]LQI[F7L^3W8,Q'B&]&>4VB!]IX"R@0'4E@*XLJ@+$1,2DT*[%E4
M$%FVW=:U]M5>JST<>#='1L9?&&MKAO_3]W_=5H??S4QO9V1>'Z9:'T[O<5-N
MK?+(WM3UB@L% HI8"X*EP5FO)=9T,=QT%M_-2X:W9%S+N/9"K#?CVHRX-A'4
M WVJ3RB *W)_64HBKJ529\X[S:R!&MH"UWY#XNFEXMH:L.+5B_CY5/SB'="Q
M4?K45SK#"^-[E6ZXV=WH5X9][RJMSGC#HQ);;H?MF],0<Y6"SKL?4QP1RN.Y
MIJ"QTJ;TX_LT&QI0?8.8+Q@H-T+SG1LPKQ=8W@@%%>LWAH/^0'?28-]W1N8X
MDV>0LO-[N5@Y\LKQ8( UQ(-(F3&0&%(@ \*!ZF"#5UO;0E29>IA$J6RAUOF\
MQ!SJO<PPL:S>OU6]QS871D@PR36@B)GX0VB@(;& 2:RP#A'+&8OJS:L0YB2N
M.91EIMV&9X'H?6)_TXO'N/V<+KP5Q^ 24*Q;(3^ XHS"4Z'PO12RF#AH*'5
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
M-F= 8<. "]SQ0* RA"SZ/$76[%+;BUE*64I92B_K L_KX5+7PPD?M\%.8$X
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
M^SWXV95K."%>E8 M:0%\5HVJO%U>O)^.[%ZTYW++N40;?X IQ^/AJ!W/'@@
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
M824FMY7E\^PK)EQ3D:?I& _=GJX&P34"P:E4U*BW"NJ=+:*> 8I(F8G(% 5
M7RP8,IY)A",WA3'8PE]>O&1-S&^,>FN4W_T84._=()TB&YTU&R<=TQOE($**
M'YRDW<":#JXG$MX=W$W$X5T2ALI%SJ)0P]\*\+?S:A'^HF8%PU(@&RC 'X5_
M=! 18<6%DEKAPH&#7!2WE:!84[[K*>OT:&JC$\PP-;Y*'Z8=G_%P<J2G9H/K
MB8$_98/Y)/)M8N-46OY.PK*77G@W?AQ6E]8 N0I +D40H_5&.$R0-85/2=P<
M*:\MPI8K51#,5$HMIDTA>,T/[YD?AA/3!D[X_20=(BV/(?5'1V'0<&5\Z"8X
M67/%1\P5%^*#E9R\+L4$OK^;9*2&QM6A<2E@Z"3CU-J(HDAM/G$1D-)2HZA=
M88,-CC. 1J%K[GB_RKM_Q<GOA^:+5VZ-U0BY3G'%&AE71\:EH**EDM+"&J0B
M+1#7Q"+%E$*Q2%* E?(8D%$WQ<UKR*^D6S6=O%JAMR:G<0=EWE/-&E>>PG\\
M75"L&.7<!Q-YJ=+D:KQ< 2]WEZ*0)L4<4[5^;0L-> G_&,$5DBR$( B55N/L
M9%]2*.VWFD;>\2&<$W-F)BF&QKG!."P<'W]H6ED#Y7H#Y42.WI5B5 /E*D"Y
M%(TT6&N,&4%:68^X2@66/!=(J4"\)LY@)M(9'5JH&P!E'8B\R5[-C;&Q)I%/
M%1O+4D!YDV;7PE3GV]6 N,KQG?W-T:1?V\[YQ],O#'-J?:I)KC!!W&&)C(H<
M>5OP$(54P"VOVI^IJ>-=^](IL[6FBC4<7@J'$RG9-]_G/JSA<"4X?+T(AU04
M#E-OD/"IO6XA4OM*%9$K+-=$>T=LZE?35/QBPDM-$.]J0R97,%VU(,]#<\>;
M)4NN'Y(^\CWMM6K%\"B@<7L1&HM@!?,J(,=H3"U!%=*1<R1C]+#$43J23GI+
M<;N]&-8H$_ 1,LGMY3IF-85<3^![H!28B7247\XG>_:/3&]26:M&S)40L[6(
MF(Y912S3B%H6$+<<O&Q/.&+81^REBB3R%R\):0IZ6^G3-:6\GDY/!/RA26(-
MAS>$PQJI?@FIWB\B572*:>$C*H"_(4X523T*@>H%+L#CC9@Z_.)ET2R*VV)W
M-8&[GK:!VU+5LVQLWN$YQ&N>C[J\,5I=%^B69J<&_COGP1-[4<<(;L6.?%RT
M(SX$;X3PR+*4#JECD1JD&62(E380%UDA@?&JIBANN6#0377O=OHU7JBC>WG9
MZ^M5V+^O4J:I[_TH_-W^=M$AG'J/PW=F,-J-ERA=7<RT*F;Z_@NEVO%".22(
MTH@S3Y"1140A$@W$"A0A]91=K,#)'.?&<LX]K"0#K:&%\1P[0K'&)!;+Q4SO
MH_WFU=TZ+BF+?^VJ]]/N!4N%4:\N+7_-2JAK5J&TD!M$\CNH4*H+?0<52JGZ
MM;JG]U]-E:@-QF5=3O6NRJD^KPGXE'\!.-J$09G#T/@X#''<:?S=CB%#U%DP
M@^'BGNYS<#BWPK?0Z9^DPR?!'?7@J8=W=/*DKC9;5YM=\ANY#<(PZ6B0FA?6
M:"Q,$ );PVETS*WM_LE3.7;SGK0^?>0'](#N[F]_W]W?^_KY>%OL)DY\_A5\
MP-;WG>,W,*;WI\M^X\[6Q^^?]X^./Q_#/8$;[[R%9Q]_Y>!#GL-]C@[.7]/6
MIW\?[VS]>:',K/."<A4T$E91Q(/'0)Q51-)%*UCAN4I%Q&137-+Y=DW+S-[V
MUNHU[G'M',:',LRKX<6ECF]R>R,OO/"%X)(5%C-M9)1.%510(2_M1#R'#3 F
M][L?#Y)Q7T:&B:K_P!^>D(:*,Y24(3&&6NFOH_1X7NEYX;#B2J(84K-K15.]
M5%!ZPT@1F-/.I*-V!/RP*UMG/)?=RE?@Z_;AW<OF@:E3VU'[I$Z.N%,J8H,V
M/& =+=%<66IYT)A*ZXD7&#"GIB)/ Y66BK+$$(*.TB#."H<XE0$!#:5(&BUH
MM)IK*E(]T^+F5.06=T)O6_MOAI^/C%,4!8[44^EI4+S -B4#4F:9<,1QHUG-
M*=99>Q<X1<&L)KB@B&$>$.?4(DNL0@4K**P<+*G +UZ*VZ84CS#,LYM\A49Z
ME4[_L#X4>I=,@G$3@^2BT-B#;RL-"Z0@G&!C*??,/,1I^)HN_"+@+%4J\MR$
M0 Q!!J?^A8YP9#S%2 OGI %/U8I4WO+6XA:/-#3Q=,@"*TBBATHS93B&]25*
M<%MX"AZ"4+JHR<(ZZ^XB60@ R=XS!%X>1EQ$CQ2#7UG0@ANKL67ZQ4N\(9Y]
M_&%_D-J.)V&M@PYW2A6D%*3@JI",%1Q[8TDT))W-53H60OP@Z%!3A76#F^56
M 2IPIUR4"/X+OHD WT3GP@N1,>6)QM(ZH HW3P6IXPKK016P)HZHR*7TEA=
M$ ,'BX(+3H4Q#+N:*JRS[BY0!6I89-1Z1%/:*U"% BD:*&+$.Q:%94 $Z[C"
M+%?_PCG!1Y2S\(R.EMQL:IX,ZUK?;(6:D-TFJ%\H!D@$+]+Y;&($XLQAI!*R
M\QB=%D$&J<4MI^?>AM[589\'X'*$>:U((($QPAFEFK'H!/<\<A65\3676V>U
M7^!RSGE8.881C9H@CH,$M9?@D3$:G+#.@;?]XJ7:H#_G<M.\GYRYL/SUY:R?
MY;R%J_)^KG/=0R1_1-,>-+Z9SGB:WG%).LBD*%.[EQ2H%TKC>]H>'5U("#DU
M0S"G@ )=>)QOC'/V2&CG#D3EW5V_&YJ-KAE\#:-&/QU_.>D8%U+70KC[<-3H
MAM%1WU=GE#<:5Z2H#$+#AG1ST^T#W(#%;?1!D1HG,!=]/VR<'K7=$=P\=F"X
M^=$G9@3C2CDKU8=@JWO]+J""#;T0VZ-IULO<,U(C)9=.E(_Z\#6X'RP</&MC
M]=5=(ZG(=_P]E=ULNVO(R3R5:<P5G]E<] +64<Z)@/'_&\0[L[.TOA=%J=W[
MUN]\@\=UQYU1^Z3\8-P]R6>R2OG[&L[F_Y@EPX>A&[0MB(8-G?[IXY:('\[?
M)=D#9S-0.!D -Q[ 4Q,V#-O#4HW"=_@IJ>?<)?F@6ZE*;G#6/PP]T+V30=^F
M1*_R"%RSL>E!SN 7U]@*77/8"Z#;Y>*!T09&E,H* VK\XW__2U&*_]C<VLL_
MD3]^:^:B<54F7G\\;,!G^4'IYF4GM&$;IL< $O6!\)3?OWQ\5<NTZ2C-R0GH
MBJE$XE,H(=-GM/"734\)?.GC+%6HA"68%@<.0P,(0P\^'U98!WZ,7\#']+Q!
MW[BCC<;'ZD;MX?2/S?S- //;S>.=83C 7@#1!.[EQN6[5  \0;$X'HWS%X9'
MC0A2.VS$0;_;&,+'H.!Y-?S8P6SY]C!7*"^G YX'CX"U@"^$84+JZG$FM2 N
M!P9RD)($!^WA5V1\DMC4-Z3*&QP$>&YOX^JTP(O"_L<*6;5KIC53ZSHUK.[2
MPY[)]I7S.<Q+NFB,J[6"J3TN%Z]JPI*^"_.>$MZ320+)2>RR7,ATER$XC^GZ
MZ5K" O[KW=;_&<Z4<C*<!5F^8HPS20;9'&0[;3HS":I$..%D>RK/$]D<5F]C
MS3#9Y]X/;F-B3)X2H.E9X\A\FSQS.M*E48$1S[1A<M-Y#I*358$+# $#JEOU
M^E==GS"@%X+/#^QG-I(4/<Q1DY38.@R+-YCPDDM>I30/,*C>DA:91>W)?QJD
MQ:O4:#)K>?%GH@#S4NE_LE<-UX'_/DUK0R\<8EK6D&7E2+(^K.!S)MWPC.32
MSR<R+\O'1N/U!!-G,IA5J+_P_,1G*_V *\W\BGHP?T M9Y>#E+?!JB28G$+>
M,%V6!]2V8S!<9Q/6,1P# X6;G_8'7_.@RSKHS:2VN:?W8F]WP/SI?FW9= 1N
MTP46X_,=0$9<6!**BX4+;D%,JJ7B=$,*6,Z3?CFGOY?*\2W,4JW_Y\7"A55X
M!,\N,7;8[XQ'5U]R(;+P0!))R-+$SOU[-)@ERAX&9,%! /,78;"_F\ZI.1N^
M^.=B^GN[AY;F</GUKUZ':0F)^64M@P5<1>&#5%85CF.O%"%<&,%4@9DFPBV7
M*%!4:$-,Y 1K<)>Y*5B(%"L7,7$2DRM7XN&-:KMR1Q*HSLXPS!'[RE:$BKE<
MRI3F,&0.N.<88+H0K&;##D#;%BC?W#/!5B5F>#:Q5G!].T24< 0-^F>F VK\
M<XHW;SGAIP5C.4<\TY!-8W+;0?6"H/D!WF".'\P]:C;6E:C7^EF,%3W6"Y4
MU];:)8&NG()$V<8#=Y3:I0"93MSF6[6.<W(+N ^CGLGH-0MG+QM2DTL%I&<>
M5G,%WQ@F5P5$>4HEYZQF5@&;Y/M;J,;DP)Y59'1JX<J!3>]9U0=I#,]Z89#B
M.>77$T&:^AS)W1H/LO>8@N-9 6VUM=*<VLD<&AIF-E=UM2X[S/1[P+U"A!NU
M0P_^-W'KEFQ^UAT0GY!-]]1DEL,!]RB5+<G#2*[28-0>)CV=#F/BX^4@5>EE
M=H&4NG:*!J49 UO<AA=(?#NQ-4"<*?T&0M#O9;PIHT[_&<-%\2S3ND&Y791'
M".]HX#XG)FOV<I@B3[_OP[U&E3<'XSAKG*385_EZF2).)[X,5P&?AB'DNV06
M:;XG$0,+/ FL3;]O1N7ZY1C/1+26XGIIM)FBYZ'"6Z&%GN)Y8F ,:8C3H%P3
MYG"4_CH<V^,<B>MGC[$'UBN)W+<VZ%$:6[M[ D*>)OC7O42B'J67.%L$<)ZO
MTK^\ J;3Z;ME"P6:G28;KDO;H3DLVRZ-QX<SL O=8?6-LJ)..%QYCA_9E(*B
M@-<7LAQ6F)<"(3TS]NW,]_-V;8Y<]<OMG$9L]TPO:3/H7;G!4VGD9(Z7%R+=
M.^%P C#3&UV*826>9ER?8E4)7;/'3<CPX_;GKK3.%ZJTY 7ZTW1 WGN-=V;P
MM2R 6<WL6KS,CYW37N.O<>>LP7"SD?8$FXW3,+.]>9<AQS.=&?B):8;UW_3?
M0$J257C5!_@M9:&$Y/XT=I##I[X2E'35?Z]PW"%*ZH*3SC#+.'748LXY(X'X
M@A*L:+F7B67:(JM^6#CW(&YV[N'5_-CW@3(/RS8V9'J8H7B<NYJ_7DH.[@]C
M^M[:/\ [QZWONYM?O,**%5PB13E&G.* M# >11%\U(*Q&%,:ZMR)L^G)A ;(
M<B>SL.PLS,.1'61*!/8S83Q@4>@!TB^$WC,/3*S%G,R(89(^'S*(I5TT^!BT
M8YQ8W7B0_Y)DUI4P64ETQ:V,]XD  (Z>=,KHUP T8@OM;.YL-=YTDBSG:U#6
M@HH'E4P+QE[RGW9%55,<KOQ"1EQ@I+WI3B2PM([_/\/403"'Y^;N/QMJ"F(^
M:O#\*3VX0 +<) *5EG 6GIW_7N5-)M9;?AN^U"QW;-^ FK\Q)4\=A&RI*D-7
MX=B@I(8SCZ+R,)8<"[CW I#GG8<911Q5FP9@!1-;35'.^7V*TC$H)6_BC*37
MF?-&*ML]>3W?CH IP/&3&S(Z#>%BX'<102=NP"5;W/,;FBE<5[[B<]F>R)MZ
MNT!7 +5A^"G:\&J>N'P8P7^ZV56$"=LNPQ433R[/Z)2_S'&<!6$ MC\,_QF'
MDAI=&J"'2Q9,Z4:CZAH^'X59O&F[Y\+E-RMW1,QP5I 2+NJO^(I)_F([V:L\
MH"G12[&C ;SM$R7-61P^S8?)EJ>XC$9,W>K2":E(RIQV)=?NFM&(JP/SS66I
M@)'-I D^Z::0E@,?W< 2M[N3Q6F4>X[EFL[Y0-U@AN-RDZ8Z&W*91%9O.'NS
M[.*6TIW?$B2^,]F(3H1^7+[T[%C!/*1<CI@;C0\A-';Z(*ZB.16E!P^8Y>5_
M.W5!8<P7CG@T[WBP/QQ:5DMW!"/*9F,^_#L7))GL1\/P)R9D UZDVD,LHQ3
M/ :CM%'42P#1,@-W5)[XI#(+&\ELOEKJ%(*%15X4]DL";LTY4W8X/XMS\>CF
ME7I0[NV%6>#/)&+6R<'HI9*Z-ZVH>^FV@2TD]T+;*+CBS"EC;=1%03D-1%CF
MUZ\2KY(;!:>/I+JMWN!4U<5M;[&X[<P$/Y?DF\V2P.?P:VA_2XKU$(DWSR"!
MYFDFPD0M??22%QBP/GJKHXN%DT9C[[A2I$R$N1 0>K!^\*6Q+K^Y-Q7YIY(5
MLWW>HG]]_;SUY_$!/6"?M^ Y;U^+@_T#>,;!Z>?N7^W6\?;WS\=?^?+Q^-9Q
MZ_R@"\]YNW/\^=A_W8%W.MCO'.T<;_.=XS^[!]WML];QF^[N_M&%6JQ6! (+
M7B#M4U4$KBRRVFJD00X$4<%[[%Z\Y$UV\U90=<^Z%7MY@L^;S@75-1AJ$)S+
M!JRDHD:]55!OJ>RCT89A+QS2BA/$HPTHM=9!O*!8@8M31$I2WW=)Y1J59W@.
MG/9==<:QF0[A5D<JID<=Z\)U-1).D7 B*>^2G, W7D^DI$;&59!QJ<(=#T9@
M11PBP@J4*B(CS6) 1C--+8W&IM(7NHD%J_G@_9;P+$^*] [3KN<P-!MY7E+L
M<3R\4=V-FBK>.4"6*)A@\E8A<"H2?R>)V$MOM1L_#JM+:QQ< 0<OE.^RFF)K
M)"I2GV2NHD36:H&\*#PIO"^H\R]>"J)K?GC/_#"<F+;/)UU[PVI?I\K)G#]R
M>B<EB&JN>%M0>.?QP4I.7I=B M_?33)2 ^/JP+@4,!3<%P28( HX D&,7B =
M,0 C%4XY*0I)(P!C4;/#^RW$=D5ECH=FA#>HN_9, ?)!G.D:&%<'QJ688J"4
M<X<#4EH!,&JOP6EV!E%EA63:8ZOPBY>D:,I;J_EZMQ7$G@.=G&ZAGYBS\H!6
M.L7LW"#E<\X=RZG9Y,I3^X^G02?G/ZB$Y5TI*S5:KH*62W'& E-#N1.(:J\0
M+TR!;  :20I%.)>:ZH26DE^,,OY64\A["3#>&/Z>=USQT<-?674D1Q9W+<QG
MOEV->2M@WNY23-$S';ET%E$K+>+8>F0\ <QSFD46O"*171Y3O#[FU>'$7ZA?
MGA)]KBQM><4![8=FA-=O%_\X\/+I^M8[H=Z27@DV/RPW71-.F^Q)ZP"P*2C2
MF# D*;6TX*'0D8)C+9I<J,?2+_XY\,GM6^D*\;Q9Y--%Q>6:YWE_9O_(]"8)
M9S5FKG*,9W]SU&KC[PDW=\X_GGYA3FOATKX, =>:BX(A93A#("*8$5Q8(SV
MYKIUMGX.G/-"";(ZIO@XX;!&JE]"JM>+2*4+ZQRF C$N-.(Q,&0<D2A$3"UC
M1 3'P2MN:D[K/>5[U;:=:?V+.]U.ON8NUZI==*[E!Z_=G%\_-?&69Z<&_COG
MP1-[44<);L6.;"_9$5AU:ER!#&44<>X(4H$8Q!PF)!IN;+"IAE83WQKCO27=
MNY$-FC8ENE#3^Y=J??]B\:)G6?R;KG_Q[VL4\[[T.N8X* SGW%O/&:.*%L9S
M[.#--2:QF!_2@U3ZOMCV:7BA;M2LY--2P92KJS5=LV+*FE4^*>0&D?P.*I_H
M0M]!Y1.J?JV>ROU7:2%J@W%9EVFYQ3(MU_ @GNH$3-HZ-JJ^CHVRL6,C=7;,
M$)7:10Y_>W9U;"[I(G9'1^[N=E-U[2;V5QM%/R=WT0=))<&4>S"A(1(E.94%
MIA2\2,:M7]MMDZ=R6MO#\P_P[OZ!.$A%E,_?G[?VCXYVW_[U=7???VW1?\,H
M6^>M3Z_IA;:P=*^S<_P>GM4Y^KS_GNULM;Z#J\D/NO W^O[\\Z>=[L%YZ_O!
M_N<+=6\44<9I39#6GB!.O$#*68,H$939:&4LV(N7JJEN[BS>UY[R W1\OO8!
M]$?<"]I9:KTP1AH:>>&9+0SWB@M/N>,QB$OKI]>]H-=$Z1=Z05M*L3%,(A$]
M1KP@!"G"0.FC$5'*@&%1P:_'LS+K5S>#?N*Q_U>7MGRL3W#<)171@:F",TDM
M)EQ(JPH9.8[$@HT2P<J:BCP-5%I*'%-*&<$(1I9P@[A+U?<X<\@RX:*37&-!
M4@D^OE8G-6Y;^V^&GX^,4U"F0O#.4%RD\&K4\#],)2PT+[!G-:=8:^U=X!1>
M>2I\\*C0 CB%]0I9*2(B3CAE.-&&NA<OV6U3BD<8YMGNH9-!/S<T3/T[4I'U
M?+A^KH->?23J+OF%+ IKJ7!"!<D5(UJ!'Q.=LSX*';E^B#2CFD3\(@PMY5,R
M)TTA@D(R&(VX<@$99RTJB)<&"_!>N0 2<6O1C$<:L'A<%&+GGYO/SO$L,[(N
M[.\^HH-G3WJCX#:GYLD8UO4]<E;;W%NTN<LU C5W-*:= TEM1%SS@#2U!IEH
M/-64:UG@6\ZQN V]JSW^!_#X?ZD+:^WQKXG:+WC\1CH9"U4@+5(^:C0$&4,4
M<DII&1WSP9(7+^6&_+G'/SV\^2M'-:]W,G,=^@C2TOWW;5>UNE[L#CCIO7GQ
M3-\D![^=.WCV0FF)<[/2"TW04Y-1'P 3NKF%=]G]-+1S:=#R]JF58[/1-8.O
M8=3HIZV-DXYQ90- UQ^.JMZHU?F3LM?I)8,:I#:CN3_II)5]HP]J5?40'#9.
MC]KN"&X>.[FK?>KA9D8PKEYZC?)#L-R]?A<PPH9>B.W1<+F%'#PC53AU5;-+
MFUI?EKWG'G=+VWS':S4?+&5FOG?BA>:#:_%&/^Q0^.^%1I 71*G=^];O?(/'
M=<>=4?ND_&#</<E*4LK?UW V_\<L&3X,W:!M031LZ/1/'[=$_'#^+CD9=C9#
MA=S4=U@J3_@./RVTMCZ;[Q;+MAK+/:C+OM73WJ4E%"TI';"I9$T;<=#OIO4+
M@PJ&YAZ3^Y#FJ\L;^<O&?.509DV:LPR@JA%I^)[CI&#L>[F'=]6U&1C2 IHU
MS F\BW%'&XV/U8U2#_#JC\W\S5GSUODNRQDN@3>Y<3FP"BXGKQ_'J8%VV7T^
MYIZ3>0I2PV901S?IS#UL^/9PTG.Z;)X*CTCE5*H6S=/NFZ/<S3D-[&303GUY
M!^WA5U1V9H5K!U7?WT& Y_:6IW1AYB^=WZQ0<Y,)TU-V=C6=V4M4LUAU2J^F
M=#(]PTH"K$DM@?N]']S&Q%BVLK9GC2/S;?;,N5%.&ZJ?Y4;FR<Y,;GJA13$8
MC^%X.+E5KW_IQ4E.>R'D;J(PT\EV)7,:Y@Q9V>MX=O'$@EWR#B60P&AZ2RMH
M%E<N_VF0E*!:PLET+9GPLEMI>U@MA /9?J+-US,N76,KH_&/__TO12G^8_O=
MWO^:[LD?6_EW\L=O,P #50 V L-;@+(K[PB// Y)Z<J>UDF#DWA4 RG[JC=@
M>4+9W7TF97/H,W_"-C6.R-QJ:V^S-0^*&XW=JI_V,,R>FB0&0 ?,5&ZK#88I
M=[2%BY:(4(D"X_)P<P><C&5]GDY)#7^7P]_3U9S]J:F%UW67'C)*<%9.W[#L
M*;_@*51+4TEEFKNR-_Q$*RJ17+#<Z2Y#T\G73Y=NJ8?\_QG..,1D7,-YP;UB
ML ]K<Z8C71K5ZC;GBNNO9W;ZP[!X@]KTW)^3=*&>R#HJ_S1SKX+VI(F3SN8
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
M*I5>1KO<):+GEH,1&G4VZKSSU-D,R:6>MGQ\HY()G$O'N$Z^%APO+$#*S(C
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
M[;U__GB;[OF63*%!__7+O]19,^C5RR>D1?W%MW>W/V_+)T=T#_K^VZ/GO[^
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
M()>46-A%?]F9\V.%45D]L#W\[V&?;*P:=7,Y?)XWPZE=8[VNL:1:(+,X;/E
MKCA8MD=#/#HYY"OT6-]/QKW& /CU#V%?RR!TIY23:+-,+D(),<H<E<J2VURB
M,F8)F3R5S!\.<_WU9$[IWPAR79F@]$MZ4(^#TK<_O]K?5CN?GWRJ@>S;C_]X
MMR-?Z1WYUR<:*UTC?7RU_W2?KO%U#^D:K/XYJ>W=)^+Y[L./.[]OJ]?OWJO7
M]-E7G_\SV/G\6__5R]=[V[NY%H6<]Y"VF7/!-6=0:B44L)%YC8[9*,%++4LJ
M;F-+P:;4:U@*I5'36E)3$59*5SA7B8.UV@7EI8>0=0PZ2WL^:OJ,XU$FZFFL
M=$.LQ.?UF5(2*)5B67A;BTX[%J(73 :7'7<:2\RG+:8;+35:NA.TY)(/R1+U
MV"@ <HI2H9'&^%RR$5XW6EI)6I+S"MHJV C:LY)K!7QA)'-%22:MM-PJ*2-
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
M8(HU2C+G(K+:&HQ%#X&!SL:%DB'+Y07M-=BNKCQ=?O)J0^CE$;I@P6=%JJT
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
M*R9(EW1"O\J&^NYH&@:]T.WNZSA]_]GWOAMB<:X0I%6;S?-W';_PXZ\+-=]
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
M>K?7*?8[2BVW%URBI$A8.)$/+F#.O=):2865%]8SG1PKEZ@56:(F#QM)$4W
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
M)#)D!(N(,L>,B%P$8U8)W-9JWW^V85:M/X5?=JYN^_N5)QT57-G2WO/ D_9
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
M^=I?"S?-,MZT7'SK:;!2'CM: U"94('E0G 1#6(!J!6G7B'-@T8J!8(3C3D
M71P[,DLG ONPGM6#J7M+)'D#QEDLTCEA]3'9<\N88728TV^O!D>?*K=>*#/%
M4;;57_FGFWRKG"L,0VSKK4K\%7T_)UAU-RN7IW7@E-GL*P,1DOY%1C/@F_ZT
M'G\6JB?#CS5MYSRKG4P\SW?J/7@%6^B4=.(@,W@^LA5)WFT66'HJ.4G,.16R
MN!\FB@FJU)P1*NA2GYG7):R2W=@J3R>]K1;/U?[.#P, Y)VR*"IA$1?$YJ-&
M A$>B:$D61W(QG:K/2T24,S@T0F_2IA7S&9K>(.<S%YO%3530DXEO+"=(O,\
MWPDN&*<B6M?^&5=;:&!.-!S WG *+U/:<-&P8;O*3.&A*E_MY(>G*6358<0#
MA2\JLJS*EU#2C$>5M?F\FI4I_#8+U6!ZM2\&]7(7G?&[FIFT7&YQHU\BY96J
METAYI8J6C2T;2]7CYNSB,Y_7+4EXN*I5]L?*@F7*]#AE^N.OV/'U0H2T[F/9
M,^.>N=$GJWR #V>6W+>-RK_KJ1!B.HJV\YYS[W=.3CKQ)&?:[T'GU%M=8*WO
M,MU^ E?FR[I_I6#ON]Y;TKD&C"4D4$ZYP,:D7,' ".=#S$I5LW-/\6OL+ W7
MI8GILTX[2&?@7C5KC>//<-W!\?G1]==?Q[M_UH\/JW3_X)P<G^U<']$<]/UX
M>3?86X5KCN@_YT<'IXU:\]M9;??3>?7S%VC_D=@_^*=9W:V=Y:!O]>#/G&-Z
M-2XHJIAPB02DO"O.&B?D=#!(R!SSTHXD<-:V"9:;,$-7)<NTS,XOL_-?<IOL
M:0BYN&VR:1B\LQTV(J@%/RW!<3YPQ#?@R%C"@1F"L(\ CHDP9%)TR)*D*-<
MG2QL;.NM&6D8ZXV,\]SC4>_TG >\32-_P])'L3J8$_'A-I57/O7*]Y54,(K)
MQ"&VWY]54)Y 7DQFPC/W?>?RB/(NQ%ZWVX]A4!!CL$<[*!DQN=$T6ME7?OOV
M=5?UJPF7AT4=1.(4<6WABV(Y@RI$%"VV+I+ I RY\,I,CZ=,+UA6XWX"CW^F
M@<]/Z+N_8?0CZ[Y/0J+D]<] @#&O=S3FT?9(:&D0YP8H/4T6X405]L:F8$SF
M]9PO41;!HD%@U>]1$O WO_+][50\,K_EK;<IUFGYGDG-F5;.4">5"):S(%Q2
MPEKO!#7867Q/ :9RCV)5ENO:Y!Y%4C8I%A,*AFH@[#*A7$48!2>"BM)+I3T0
M]E?9HEBF*-P+PL.R!3\6MSFQWCL33\/%<F=B-2!Q[,$DR33'(2%%',\[$QYI
M!I#HM1&2:"D ,;,'0Q<E K,2@+@@#KJL0##SH/N38AAWLU%"OW,5;6<F#+C?
MPX";&P9NSHE-'!,[B)TF+8'@,4! QT*8G&(O' 5NY"SB+G   F.12SA%"FN
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
M_M-1CT@66&L@C2F**#G12GBN/--8J6"45C8&*P,IJ=%2 VGMPP0URO+3EO"
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
M.CXZ^]2LG7T!@_MZ53T[Q[6#[^RXN7=9I7MPO^-Z+5<+/]N[JNW\8,3;B&E
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
M$G5'7/<8B3H:&5?P9VO\86OW'D!-U5$B1X-"G&:#3#"/F HB,FZTE![P1P[
MSB[Z4$&A7J#0<T:F%13:&H56$6?,)8J3B2B!.8TXX0YIFP"/N 7.38G#4KYZ
MG=WK_-'N]8)"!87V+C*LH-#V'NKUB"_J</+1(FX]_""$(Y<PX) @PIM$HS"X
M\0XQQ@L.%1SJAW=H![%9Q3OTK(BTBL"B21"EP#X#+8@ACD- FBF..&PI3&-O
M,%>@&0VDOEDPM_B'.B2P>XQ%'8V1*@BT/0*MQ3Y)*S2STB.BHT8\Z.;(GB*M
M0Y"$&Y/RS7"I!LS@#NE$^Q;=U-:6N#-_']T\D/5.R.P/L(R;2CR[C0AB2_S(
M -."Q[N&YC_$J6]*#RTP!-$"(O>#R$]KH3]8"<HHF%7$.C"FP"9&ABN"HO62
M&9,]T.35:\YOJ6&[7>SD(P'D!5C]SULE:+\G1+V@P\XB=0HZ[!@=5B$YS&KM
MO91(V=08-@RY ,M@J6*,<*I"OF3"S=&CU8N"#@4=;D>'1P;0W'-[K6#&;C!C
M%39#B0G.&8*< &4"5HSEL&(&BZ.,]YYX8]VN+Z85V"BPL=MPEZ)4[!@@5G$M
M G#!*$*08%P@[@-!%@ =J42Y<I);AQ,H%>2(%'0HZ/ TZ/#(,)2"#CM&AU6\
MB7:)>1QPO@7@$9<F(.ND1I1:P[%W)D8!Z" *.A1T>"IT>&1X2$&'7;LKU^)
MF) *>TY1M 3,"Z4YLD0&!/ M)9<1=#S\ZK4@1[3@0\&'I\&'1T9M%)?$,Z'&
M*E9#$RN\8Q8)$1P"'HC()- O,-B'VF+&"!;%*5& XZE/.AX78U$4BUU#Q%HP
M!4!!$,%CI)/P.=#=(&,40T$IFZQ05&#;N"4>??EX3_"A">/XZ\RZ47S=D"2S
M^G \MPU-_O.O8?CI]7\V/]J'W/2OKR\[6'ZYG$$;0[&LHBX;!&FZOB1CFW,'
M9CJR9W7\<OG+5V%8GXWLQ9?#<3/@YJ'K1)M-SKY:E(@W1R!>67 7 2B+[N\O
M+D_(D5:;59=_8,UZRK?J]?/?,5W&6L9:QMJ?L3*U[7A>8*R:;=3K/:%^2^R&
MS31^/DKYMI9/VGD9<&EYL"T+HY:6O6A9&+6T[$7+PJBE92]:+AAUV63A_V&M
M0^:S]W7N=/R6IJ7IBS2]ZJ'<R!^Y8[\JP?<Y5FDVL]^?Q:F=P?BK::SGHUF3
M,?O3,,1J7L<T'U7#<7MBF(\89I-J,I]6\%)['$_C>)9/$RO;I)-O_IRDI@'T
MV3PT]K&RXW#9=?ZZ?=]D7!]5;^)T9H=C(.KI&># >-$".IC<&)6=PHAFPQ%,
M+>1QA#B+TU.83A5_CQZ^^12;?N*X;L=J1Q-X_'PX.ZDFLY,(HXZVGD-W1]6=
MKN U#_AO\WHV3!>O-G(AW_G<<Z_FF\GT; *4:\G^OIGW<)S3_L,[YF,[&DT\
M?!N :)E2\.$TCEI" TWMZ60Z&_[1T@]68CB>V?'Q,+O"\QK/Z@%\] G6:3*]
M:%Z0AK]#7\UW5;+#:?7)CN;0.&0JG#8+&N#OW+7_]WQ8#YN%;QZM3V!%D;-U
M#%?6;5"=GPS]2;/>X\DL<V& MU8Q=[T8Z4E<XZA!-<ESK!9S6_ ,,)&'V<TF
M@X:?IA'(LG#JQ^-F9$>[X8+V/.;[^2DLF-]!'/#5V\IOA[4]/I[&XX8V[].B
MPL.'/),/\**_P9P_]O/ ;13_\>/%KS^',T>Y?/?MCZ-?O_WN]U]/_RG@7_[]
MV[_#\Z./W_]V3-Y]^/44QG#^_;??_?'KZ7^E=Q^^^_W]U_^'4^#..($PR;&\
MP29DE11(,A%42@+SP%]5L?;V+*_I=)[UC!>#V2743=L%K+(4'F<Q6H=7=W$+
MHU;G%B2F!J0%!C^OJR^@E]G)9 ZC"?5?OKQE&WF*PRN"\1%NCYT?>GK%R1'G
MF_EL']*M.M)$/X'76K"[WUG&6L9Z"&/51X2H79RRW*]&KX7WM$BU.(>_M[K-
M>KA"CD")TY>)5U"WQBM\.)G&6+V#=B=U]<TXQ' S@.$19"/B.MDVJ@C4;9J]
MLU-0_*@:5%D=VB0@;).I'R0-=4-#O%.>>R#=>T&N'Z83%ZLW=AKJ)^>W?:3?
M3Q?U+)X6VFVU14QF=K0!Y0Z2.$4PBV!V1S#OV3HWC;/M1CZQ.Q6'CW'VY6/"
M\'?&25O'^9=!ED$>Q" ?#$B?R:&HCI3H"C;='OS_]SR3Z47U'_;T[*OJ?R;'
M0U_JN1Y$9EBB8HJ)$\,"Y23DA$S<<6N)-DS80'=9.>APJV=_??[+Z7?BW>GW
MHW=_O&.__/9/\?VWOXA?3__KY)??/E[\\L?)R;N?__>W=_27&Y>>WKW]V[!I
M0__UQ[L_PO#[MQ_QK[^-3G\Y_?OP_8?_^NW]M]_\_NO/[_[X];=K=5\)"5ZH
M9! 7-F>P-F:9:T%%)KV#)<X5%PD;<-*E!+);XFU)9'T0<*6"Q<Y02V6TW&FF
MA0/HPL0%J6,BFU1<_-SU[()4SX94JT24@45"1!!(":T1]Y(@!YL28E$K;2E
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
M89$-*:" >0PL2"\C;8\"]K"241'PI9FAG:16.!I5Y(8KH[41V(D(8NVXBD7
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
MP&$XTRK/Y[@>5)/YM'+S&JA7U_!<WNV/+P95N@24/(I)BQWP\+0%E$%U/)W
M ^T>#7^.AO^>#P%X+IKVWIYEH ,-Y"QF.)I/LU("+::+4>5&P],SVU+"^D:%
M64QF'&!V,-?O@&,FIQ$ZJR.\X6(RAU_'  _0 W!5IFI]9:KNX@9MSB?0U0!(
MFVE<5QE**?[JU%X,FE_)5Y<?9<:Y_N'Y<#2Z_AF,=!2N?UB?W/9IGKV_T2F8
M5>/KGUF8D1^>P4RN?^- ]8R?;GP<0;!.;VE^-HUA>/.=P#ZP#LL/,_$O9]/H
M;*M^,JN. ::RIE1-IM79:#Z%A6R9O8XM05N>:-C(3TZSBIBO:8.8@1H PGU\
M75O\+#JT]\B'X[RL7Q)V)#95]#H$-)\5RBS;DS$@T&)Q\A9<9:,B9##*\@?(
M,,W[0\LP[2;=TAB^/)M.,BRTGSG0WJLT;P0JIVV8@9Q\#2; _9@06N-@,TC,
M0VY'.#^#;X?C-IE$HU5\LL-1N]Z3:EYGJ5H@81J.\JL#O+G]:*-W'56_@&"W
M E2-)S/@..LCX%Z89\P8#0&&,OT6_'?W1(^JGV-U8H%MQY-JXH OV@'G89XU
M@[+CBQ4CKS_XX9ZN@0"?)B/H^>-X<CY>X'+[>X/4@ZLPO28>"1!N,JWAG78&
M8'D!"#:'5^5UA6_F(%F7@#J"]1S5+1R"] &4#BJ W8;R#0GR(R<9#-HQP;S"
M,"5X20:"*4 U4#E-)Z?P,C#>,C--FWP=^4G 6L"1D"'R^O0'"PYIT+W9=QI+
M"1K#&X[C.&;Y!YS_&&%K C;->)J7V\%7:3A;C!BPO36:%M@^_@00M>C_*G'6
M>G_S_G^_>XN(N=PD5UM"IA ,'[@/P#^W'<[:UV8HF\+,9O92R6V?:@;2;L"-
M(0SSSPR7$6XZ&:TO"FQR(?/W%&SFZ6(+M ZX%W8O>%/\';;J6;Q]9USKIB56
M:)7RI7P!95MAK6;#V2A> NV/T+CZ>\L-ZS@,2Q[/H;<\L>:-7X_'F2WN$)?_
MSES:O.8BVFD%JP&O>!M]/'5QVK:B<E#EG#"+==A*#CT 0)IGA@+RU;#CMN\<
M9W-_ D)_AWY2A5C[Z=!EW!@O'JHO*5)OORNLC/^B['YN#QJ-)N<-!E^U%.W2
M4EPLK\O(:AON@/7]#=:PX=BLY+;[T233/?-T7OZ<"J:1V)5.N+Z[+40WZW @
MA^.+_'[ \5@O%>L';3U'U;_&HRQP"_B"ILW+&A3+[UFD26IE\'Q87RJ6"UC*
M6LBEHG=^0T&"Z5W_:%[?HACE4;7BNOP2)")S]*1:?35HQ_W=V!^UT@;T "T>
M!&9HLS_N(0Q_C\ZSF5%L2*>-XO>?XO33$/K:'5VZ)H=KS%%EOAA4)R!I_V[Y
MOI6$_P'5>GHZF<9!]0:&#( ^'EK8A4&60 FPS48,2M^G!G:SO@([:<->8'G6
M\]:"@@_]2:-K-V8A:#Z+)Z /-YV ;$\;2Q0>/X'1H75% EJZ;%4UEE$##8VW
MN_T</FJ_KQ=ZZ !>FS=0T.JK^J(&L6\%#3H;+3]H;;[IQ034A:&__!1DQ8&8
M OZ?#C.DS#-96HMAO%23:C]LS+G&IPT+-YNW6T7UOE5]\T/UY>3B"+:2:3/:
M_/#9":!:_F-=06U4(%M]RA(X:Q2^J^]O=]W<SP1-SMJIA_AIZ.-2=8%]?MI
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
MN%;RLU,R?GMUR449Q_K.]:'W3_=QA4@[5W"ST?(>6##QH938HA[B"U#BSYN
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
MCJBNQH!O>?L'[K$I@?X$TUB*6L.$#;W@P]R_=<,1=)B)= KC:,8RNSC+T0@
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
M>CA;%)',W=^Y/@L:<7JD<J7FFV6<+U,^Y70D:P\N4HC@U2-YP*/Y[.Y';EP
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
M]]GH1UX= ^Y&$$W9F^ 4>5>%#F_@R*$M)#W4K,<)I>\K@SF1I8^0)8(^.\S
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
M Y Y-WT,$Z-14+7D9S*QC(_3N4X =(#U1VF>;A3B+3;N'ZR$]BWFJKE"#$3
M#W12U>BEPZ[WWK^%R2R\B++VAV6'EE>/H#PY HLP&C_@'&A[X5T$^LK[,N&F
MPRRX'5,>%/:H Q=O XYX[U%?PC/Y%NJ/)MG@#U5$.+-MI8G[\R?_(#R8Y>;E
M)84^+HJ@S#D'91[2^>KY+_<*3YF$%AID'R,44K#SG\ ?A5]!Y8DL'44Q=343
M.NBDBDCUJK,)W\ T2C='% ,K=,;\M80*515U[YX/AA?U\5LW,+6R:QS'H.A@
M<6QN,6K&;A^($JRC+7G=3H].A&,9GS(2#.M'*TTNS=5?\@R[V3%;#8?GL+@0
M/+4SUW5 *;J=6G5&7[=:I1NN6(XY_: HZ<<1E7 NYK'-8-QZ3=C ;*QT%[:3
MB('HT&P[*WJ\<$\VV"&?NR(=@M3:H!XX&V.H_;_(J'BV2HU-W!*]W((^7#+_
M76J6RZT3;)I(-P%T4LMO1V5JKV+TU97$#R7\?E8@X[6;O5[U[4;#-JQV_RE
MM9J]5CW9>K+U9/=LLIW&>JAUCRYFW],:_W.MUSYET@"C^8N?8!OA?X.S51?[
MWT6X"[)0/>5?/'.A_[X3;P>]$0Z 9$Y-LDU)UJQ)MBG)6C7)-NR2(V-)%U U
MX38C'+84?FE]28JZ*+H=WKB<=;V]/\S2PS777NFBQ([9;74?UCYB[6-?Y0+9
MFG_WFW][9J.U*2Y:S;\U_U9ET2!_[9I_:_[=7_YU^K7]4//OOO)OU^S9K9I_
M:_[=4_ZU6V;KH0C9-0/7#+SS1;<;9L.II 1^ :#JW_+"7.-H26GOR^IVV3'[
MK4T[J=8-+Y]WC_JFT]U4V]5[],PFB=EH;QK2J/?HV?>H5^]1U??(MNUZCZJ]
M1X[IM'OU)E5ZDYJVV=W8Q=CC5MG;+W)Z@#>Q6$>I2;_5F;6M7GN-R2VI4T>O
M\:AIV?CZ/"5%(G&$5W]_4^K7RQ78FYR8=9LP5^_$=!YX)U6AP-&![U"W6>]0
MI7?(Z==GJ.([U-W4O*YWZ)EWJ+6I;5WOT+,[J;UVO4>5WB,'W)\'YFA4Z!Z%
M2=VL^(7*0@[Y&C[F+%HJK-#PH@RKHS> 2SVP"\YM4J;29]-NF8V-(2.W2)T=
M!Y[JHU$?C95'HVMV>@^\D*V/1GTT#OAH]!Y^Q5J?C/ID'/#) )VQ<<R@/AGU
MR3C\D]$W[8WO#.J349^,PS\93M?LM6M'HSX:]=%8<#1:9JN[:7R_ D=C4\#C
M5Q7I*=JQ[LUF<>[*9KDOF>5IDG#6[(1Z(2>Q3+BG>A8;8S_TQ]EX(5-HINVI
M2+EU?@E'1G==7]*0'9O*$K3+DL=GL&^P7[&?<-MO>:O;?H=3U8T[*2.3X5P7
M.V_OH-%O\]5.>'+-1K]GP^'11X5?<#F2,C6.XQA1GC?M[[L*?/RYV75?X,%_
M]!-$#781E([:8H_$-?679ZPZC=WKAT8*^Y$@0""V!*8F\_3HE0RQ"1!VS2=Q
M K^._$G"#?VST(6_HW2F)[!_.$''8/=K!AVD@J$XA3'H-=-(,G=$H-WYL\-4
M8@_MH8P5?BS\FJ1QYF(O8R\'LH$QDXGD$;,8A)S,Q\CQNZ(L\'C: PF#PID$
M(>\G(QQ&G73];C346#?<X2@"#M4(&PEQJ"AQ*'X](J#R4A/E8&J$\%!T@[\&
M/H@E1$'F\9,[>_S#/A!8#^Z#'UY'P37O 0H9(M#=L]F!>.F4Q<MN9,B%)+PB
M!;F,>W8>1V&$<!;+I4@%._U?2FG\$H&6 "9X8FU+(RZ#YUH^LX\B\8EASUD-
M*U1DT)GXR7N)O@MBFCA=I"8U0#^)4"E@M_^3LDSZDLNA2UC3JO.SG4/2K[0.
M/H75&TUK9WRW?%:_(GP1"6&0VLAN\ ^!_OLG/W$#@I@! VP0902A]!VDX86?
M?*^^\MT7(^'+C+YFX&<%X5,R==T1*J!D >R'X1I O\*0H>%FH,9#=XJ6,[W
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
MID2JD:."42YP)&=B7,4^;9HA]Y*33)K;23+I-G><9;)#?>98U=)FQF]A+*_
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
MU$X<H8 @U-E%+$+^)X3R"]/W1WW:VUVL]R^\X,7__88XA!IR,!F)(##"*$7
M5$_*,9QI%"0.3 W+>>C/]@>2&I,LGD0) ]3.EF'W\MIJZ6:QG_H2Q8([$B'(
M*55@;?>;+41B)=S6&Q\!9;/!'S ,X<C"NX$O!G[ +]-P J;'GS%AAK&:JU^>
MJE]"@C(&"%>K\)]08B'&*RP"JY.R'/RV-,-B8DTC6OAUV?Q-XV8D"7=V+#P)
M\P"R2'R78$=I!"RE(MQ'>(4JI&)P=2:XC&MJY8Z38GC;H#1[=(,"^%J&@GUF
MZLEJ/,A',&.% &J7 :DN!;;<Q2%JMK>#6MMZ]?=*H-8^/UV7@\->GO[CE^-O
MOY7B(KN?Z5UJH_I8M.>ESA<HAV*$ 8^+BM"UI!N_F,-*C,"Z\[#OL2LRK!8E
M!-N8;4KX#(CA!!8N"<$;@6\'$B3T$.4P#D0R5SV ,E-F(;Q$XQ4(Y*NE6V4H
M>P\'W(G*6\S\*6!YNWW+:?91"FP*RVMWK$:[MW5 4@=^;#T,0?>N85M6O[?]
MR;:;5MM>#T*W^C[T,T<8.U5:^WJ>"7K 7\#&B&*3Z7 :NM9!1DH.-)#\1(O?
MQQ5MQJD&_K?9K?(:$<+Q_2%MVL]B:K0XCG9(R_HX/:A=>I>\,RY_/#[%__GQ
M^*+6!B]6&QP&_N2C5<4+,%U?P-HKSZ>7(^$;\#\C$=?,6C-KM9EU17_:/65<
M&O"]G\*7W)J5GYH:56#N#=?XYA-&:(_S"*WF=],XCWTX 1,X @N'@;L,%@\<
MNVZ4A2E>O:DGWJYQ,7Q?[+]"MU95N9YH=E9?4+T;1-X4_C-*Q\'?_Q]02P,$
M%     @ AX:D4J$<I T7#P  OZ<  !$   !F;W)M+3(P,C$P,S(W+GAS9.U=
M;6_;.!+^WE_!\P%W>T!=2[:<MVNZ2).V&R!)@R2][GY:T!)M\RI37I+*R_[Z
M&U*2+44R+3I.TUMIL4!MF?/,<)[A<$A1RMN?[V<ANB5<T(@==MPW3@<1YD<!
M99/#SI>;C]V]SL_O7KUZ^[=N]]?W5V?H)/+C&6$2'7.")0G0'953]#4@XAL:
M\VB&OD;\&[W%W>X[+70<S1\XG4PEZCM]]_&O_& X)*.^XY#NKK\[Z'JCT;"[
M/W:'7;+C]O><D>-A[+R>'.PZ7K#ON:1+O!$TVQGN=O?V^G[7V=G='P<>V7=V
M? UZ+PZ$/R4SC*!C3!S<B\/.5,KY0:]W=W?WYF[P)N*3'FAT>[^>GUWKIIVT
M;4C9MT+K^Q$/L_:#GOIYA 7)FH\C/BLT5Q?&V)<1?^-'LY[JL#/H[V;M%1HU
MX%,F)&;^ I]%C,6S:H% \IY\F),>-.I"*\*IOY!;+Y0)8"DY'<62? 333\@8
MQZ$\[,3LCQB'=$Q) -$0$L5WH4'N9XGYA,@+/"-BCGU2RQ_O7B&DB**S><0E
M8B7A,18C;;'@4HDY7<?M#MP.2J@]BWPL=;RF[74/2T(]$DJAOG67$&_N1=#I
MU3<@%MT)QG-[(_*"B2'I%7MC<G'K[N_O]^Y5(*XTHQQ7NGU7?>RZ?3NUJP*T
MOF[XULWDMF'#<A#:V9#)/=&&ZG%7QY2\Y$4BJ&S95[:X.T^S93,[-C5"0PGB
MOYE$MST_BIGD#VL'B# )9E_LQT81,N8<)J]-C,E++KX]T9R 4'M+,B'U8:5^
MS%@D-8JZDEZ;SRD;1\D%N*0"_B"+^BLRSB:ATB17D5KT/P>8^SP*U^2AWIQ'
M<\(E)2(_06J *2?CPXZ:!;I9[O\]Q*,W8$G6I*2@.'35SST0(>'9LB>9K(KB
MPXX ,D*2^.9'[KB/0]N.@X@?AYKG__ON!V1LVWT0H8S^)7H_Y\2V]R BH.[:
MA'TE?P._(QH<=HXCJ.XO\03L4]>_7)V::C2M>BF2X6;(2TK>.5!"P_^HNUP2
M=)&61$KT;>^QP".H6)#@,WNG/S_N:RJ<-C$(/AHAM>6*H54IEE[,?&GT, L(
M V'X(**0!FI=]!Z'JN2YGA(BA8WKUV(9.'$U)WT@XAJ<21:DI)@H#XI25)3
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
M,7I(I9XW9-:J-8>-ZPU*.^D;A<U2*#4$C1XR^39XUK&8%ET+\JZ2DPAZ2@!
M$/U$H@G'\RGUCSC!SQM3FUIC#C7UE-U60BVK4)<!]AKE3$3*QN2)E:692-GY
M5X_#M[U[<8#G<_6V9'4E^<Y8E-BN+\$5$B9_F59%J?+K[Y<\&I%CS .1^O.<
MS$:$=Q >"?T@_V%'<K5IP_",Z.>7JILS]6I9J"FRYO<C'M(#H)A&@;+RL!/$
M/"V,10S85,;JVR<>Q?/#3M*<2C+K(*F;LXBQ>'801&HA<@H_*)1.;V5'SO%_
M(WX<"QG-".^;>U'=]L6[</T@H)$ 'P>Q+S6LN1\&@1?O3&[=6'%07:P)LWK"
M+][)CR$6T_I\K6S^XAT!("'.,9]0!KY7?Y$QWX<Q#L6B$U5-MV\_&#]/T.O0
MH%(F.:.WI,Z[K6\@)X8KN[<1UOK^4R8 3&8_C7"H@AO\0D94UG1*<F46,9C)
M^$,=OT0Q"_C#632AOD64KI%Z\6 ](T '6=0/^I9*]HK>AYOH/;G$-#@:0QWQ
M&\$<NL-7LKT)U.9D^_IOFSX;VU<WGV:C7]:06VSTXERN'FYJA*FTGQ]U]4A]
M$N8/.I2/]:N63MDQGE-(.3K]0"Q!*2U.F7K_#0G>Q_(BDK\1J6)VI7/L@6QB
MY+L&?%K^U"I<J]N^>/C_0B=0$!"?"KW;<TM]38.Y+VN$7KQ3A?+:M2C%W1^F
M"S>8WF%V36;4CYB: 2-^CEFLEM:Q>M74<71V<V+NF17$BW=8E=F?QS=3\C7B
M86#N677;%^]"<1:_@D$"5GX12>;/9_R5N=$"X0E)\5GGB:]$60TSW"UT94(N
MLX/F5/A0ULF//)HMWNJFOIQ@23Z/3X6(E7'JY'+Z9-=*)VU1PW,M&[1!-9SU
M'H?!'2QC,/]FCOB*AB\>[H6WOQSEWOYRH>H</XP#=:91OU#/5XI/&4A,8)H7
M*ZE]"N0/6C=]N*="C6B8)DD(O0MNB#]E40B+&[)F$Z*6Z(N' 13T:RO^'\;8
M:U@SJVF0?X/E]"+;WI"9_ABK9\Q6A&8-28L(M(@URB29$%XGF\2",A@+D.)&
ME*6[Z=E3A:<!M*5CBDM_2?:HZB\'&V>BU0/X>YKP@PYX6/&1T#PB"DU>?$PD
M3ZA"_:[8N24J]Z[)2ZL%7KPS)U='Y_5WFE:U?O%N+)[8DFJZHP%)M!TO;^I
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
M"60)7@?O36P3K=^VC54E'<\X>$MQ2/DL3*EI0GM!L1>U5'$?@;69[_;+2SY
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
M!^?2GD9K2*?%H;EUI^B+9O2CZ,!:@W!@<76+#1CE!,])#E12J8)QL8G/NRW
M;6BE?_09JH+MVDY4URYE'@F39*(LX,(+ID2VR'DK-8JOLP2AO$]-]@RV ;<-
MH\R/SJ@#;=:036O/?[&-SBEH2B6)ADLB%2LWM 9*-&*-D#W7LLEU)7>BVH8_
M]H=?Z/8U4\7[)S[U$+NEWZ]3D#%00U! E$UD]/L]<P08%2Y8XSDT<; O@]B&
M%^['FE?VML$1NI _.YOV\^Y_UG%AEMJA_;Q$^237I7-IXH2[R(S*8(1M<K9U
M.WA;I?SHCT6=!H:K6W&T0>#U^?F+,_4CF01G+G/B5+E"G&E%0@9+5 @^9Y^2
MINU*J[=!N!6U?K!T<AOS-71YUI[]ZNZ'46(B6*N!&*L1EM'E+J HB*(YN8SB
MJ]CD^-&]R+9BTP^7B:YIKH8L6NQG=VF-;M4)9WUS6+DO9#X;!14E2SH2P&FU
M7*U:+H9 =U^#9BXEE**-H[0?W*WX)GYX7[NZ90]F82D_NW:_X?MB@K<9=;(
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
MC:?4V@"_&UZ=WHK7WW%(D\Y;GM5*'>U:=EY_TT'G)FY[6"NUM-RGNOFV]<7
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
MMVF];LRWC(44C'=><N+ X5A(2A#OE"<QI&1]=I!%D]AOJSFJFIB7FC]2QE.
M%,O5OAQ]H-)1/45*(C,Y,HQ2.&_2E_->9$.:GFNP9<O9>$_3M!X8ZT:D,1A+
M(4A"T4,F,EN-LG-+,E! )6B/YCXB70;8VOZ(7-G'*,.,/$;LB+$'ONQ!HX_K
MPAX[_HB6YD2Y(%H:BPMN%L25]9<[:4"'P'64CSG^V/8]%Y=2)E0!8X$3Y4N2
MCBE*O!6&)*%$#-XF'$,/J9 AW;_<E&T[.92'6O(XH<P:Y>8+_7P*F7H,O4 9
M2>2R.DQQ(G1"S3"#<YUZ,.;M?7_CX(*:YAP\W+K'9>-JS)2[H17Z'UDY3HS.
M.&1D*4MD4I#@@7-C(@WLP2>_+6_\/EX&>2B\V]..!Y-M405U)\*/TY_AG>_2
MLSR'_F)^EC@(C'..:,$0I(= G/"92)>R3,!24/D^KV_/=P_IGIFF!#J&;8X^
M6]VX:-1*JADB(ER5I"4O5X[Z[(E.Z 'HR"P\X,JY ?"0;J89U/QUD&4?9M5<
M7AZ>'$\L 1%!ED[>01%K0B1)!JFS5.!DD\39SDB'=,/-H)BWGRT;)U#>PV>8
MG.]UOGG]JW62&QN!U#BGMGIP[?J[;1Y;53/'K9M;O709:""KWT&_>.DDPMLP
M[DXJJ6^[YU?5XQXB'5NA^Z4G=WS#\95Z:R+R +5>3+L?X&1]KON7"?J9G_IN
M!G]T"2Z-EGVTNML+ZBCU *&.KM/]#X#O\YH'T&^KX^0[@:B]>M5[^0-8Y+@K
MX4[0+C[\'F;GZ%V';ZO?.I:M[@7P /;:32E'M]EJ";M ]7Y9<+@8^X@(?_57
MF)[T_M-I%Y_UX(]ERGUQ/8"%JZCPLN%784[Y(V X]<^__#]02P,$%     @
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
M_B"WTIE20I,Z#T/D"S3:@9$Y.I2"^J=8GF-+R&IV'',J:31(D0XTJ5+W7>W
M=='EP#MP7?@?)D]A_]9=S&;T!Y>?_'I@D]JHG8C166J9%DPK"A !C*%(SA05
MBPTV-4TC:MFX)Z6WT\*)YU-<I]U^&9F0$'1!IGR]F3P9Q6(HA85Z7;F26NO2
MI%Q D]8\*;I'MAL4RNFS46]FTT\X6WQY<P;462]GID]UHW4D<A+.4S_UIEX"
M93R97:.H^\E9YUA$]DWNUQVD=4\2;ZB&'K-&+M?_>VSA34K,JWIY\MOQAX^+
MU^7O\ZL_'6GC<@H4-AME*':6PK,0P#()H"-HI0/L=NQL.,R/0,JGS/+&ZVE.
M8_S^QLUZ,\-/,,Z__/FI7MGR[*K8^E6CC0HI6>JWVB1'DY:.+%J3F$\RFXB\
M\)UJ%IR.#[ZMM8^@4SP<M=SM(N:4NLA5BR(X"<HCXRE3B\ 6!B8%9I Z/*#A
M0N=3U_^3N/OE^:YR[2DI]ZJ[WOK%SWAY+.&J9-HH%@?"%\L"0&$Z:L,@>,=$
M*5%8XY1_ .G[][7R2>\#J.-N5W"GW16N"\.]@2_++ 3GG T@(@.5%=->!YJL
MHF=6@$8=1<KJY)=@[FWE4U<80!UWNX(_J:YP>4/O,K1Y'<_&'Y:/&P472W!@
MF)0\,XV9,Z@]/J6@8\C.Q=@T@[U=TYY$WTH'=Y4>3DGIU_/9>_CSUB]'3D57
M:C?VKMXNFU RJ!?5!VD]&B=5<O;4E;Z^:4]*;Z6#-3M))[5U^CLN1AS0!U$<
MXQ')W,H@ VX=BTH&(UWB2IQ\)L#O^+2VW@_#:Q1[8IN?"YA\&-]\>+EZ]/XC
M3'Z;3O,?X[.SD=,24J9XPT8G:@4&"C^RT P*3YS,  %WR> [\J;H/:U\4OL
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
MUI,@;EG_4)-Z0P(:Y:+FT%(<]T-\/%+IF8X&BY8WXUFT6:JL'-%6:A5811
M"RO12V,5><=YP*)FAYPPNG[BY0*T!1.X%9GEZ&DJCZ6PJ.O,[E!'67S0HG%U
MHV_P#'5>J%^?I@_CGLI9H'<+6"R?>+V#\>[RN9>+=]$*R:-S#*(!IE.BKX06
M+%G@WK@(PC;QD+:B.OYNSP&TKTJI-_.W.*9XB>5JP6T7,"TW9[Y!<YQMEQ[9
M6M7!P:9NSK_A5J8L U.AYDWFE%F4MEX\&K"@1*M%FS.H[7F_9\MC*-J[6+CO
M=)XWLVG$%^3I73?N:A&<"VZ,$Y$5&LAJA3].#EE )G10*7*0*:ZL\VS(]-CP
M@N&]VP-L/NW98'TGZKS[,J_.S;> P HKN-8,!?FS6CAR91&1<6L33S8;6>1.
M#*Y[^H.E[V!3#91TN1QA!'?:*<E,R,L#[<"\B)J9Y*C]WAD*5+ZK;.[^_*\^
M3'Z4I.U= #XE;>_'9^<\W'W(.$K2=N&&9ZZ1N6(2T\$HYB//S)1@7!:\Y-S$
MAWM82=MMQ=*%@[Z]O%_?OO_M//['U72GR4_)2*\NNA;319I&@["6"9,P0P!3
MLM_),_CFL:>8P=O)YM->#-8^"3MADH#"L:"UHGE/D:>9:RZ,2RX;PJI6"[P^
MY"3LO2D\S'##'IM0#F4Q1C+%=<TTEXF%JC)MT009 8J&G2A]<,<F]J:W/X-N
M]..&R^%ZEO/R!4 /KG^ZW!QID_BR]56MLV!V;^=*2DSP1KA:E=EJU.3?!Q2)
M6YT]MUBRVIJEM&N+>^1S]?LV5&YZ2VL6=VK="H'>D@L5.):@5"W%YGU"",98
MCC6WJ6PC<-/[FI4.^KI=Y*2B>2$ D]DXII4#%JRIF0Z):VN=467H>D&O^LJ
MVO*.WV9U4S9P R[X>ME:3>&6BKZJ!0^\UR Q2ZMDD[JL]P$[J5H#^VFE0TVD
M[EPTR)W:@N]92A?G%V=0"VZ>3V>+\7]?7JBJ!>=.8F+2)\FTEIEYFLU9,#0)
M1^6,]DURW;M#_;[TU =?PU9RJ_=)H9#6AY+(3TR6_,24&8 *3"J/.;N0>&YR
M<<YV6-^7<KKRT&"!].M:\!:<E\O#6>=@"Q3FE?44 D1D7M/8B4XG78I#99MD
M*N\.<:@LF.:::<3*J>3*="J,F Q7(AIFM<Y,EYK(5I":2]^6()4 :))"_J#J
MYO:KDD,JYG9@ZQ2JE^X ]ZEB;BO^#RUCN@=Y)Z Y!"Z@7M^IE;=UT312IQ2%
MB6233%*Z)(8. D_F3/2I2JT+9WTO=/]"C5V,)Q_N5F@=WU3/JR=#C"WUU$@@
M#X,&>1:1G$@>4A*F+MG";F5D=GC92;GHA[,U;6CJ!NL&=PHG<A%50B \$FIU
M7JYKS6C/O.%.T11ODVN28/_PZE7N(XM>S-Y@TME6@A<5.7-%6@8FU.0KH9CG
MSC$/66G0]'_3Y"3.@ZZ'?(@X^B*C07A_3_%=Z:4I11GFN*?!C-?K>UP@%6<1
MBY!1Q-A$*@^]'O(A:NF1DB;5IG:IZ*&*AE@+P5MI%--9 8O)9F8A2FFUMS(V
MJNUSDF57AI1/_P3=59$>?+O^UKKY+W]^HF@!&VW6;WY1\ZWZ'=NXLL]K97;6
M9;3:.LTYALHH]XDGI7G6?NM&_>97'C9*D 0_X6SQY0V]=4$"_.6_+L9+^7U=
M_D19D+L"3$ MZ%V*8-&KPHP.HA0G5,$FZW;W0SOXLL-;5GU=5FT^ FL,A\B9
MJO=C:$<1JK<:F'& !JVCWS8YZK<=UO"#8L\:N7-M87\L#+N]^SLNUO3+>D2<
M(L^_P>)B-EY\>1;GBQF-+2/GL\9Z3[;R6'<14+&@;&0<+4BGK,$VQ^K[:L"C
MT]U1F!UVV7)=([#:OCJNY=?Q/,'9_R'?8^2,MC8IR5SBU<O0@N+?))CAA:+B
M$DKF3=S 'K"?E)/84#@=TAA:L'YTX?Y.[M3[/_#L,_YM.EE\G(^*D>0!)\M,
MJ'D_]:;D*#QG5D6;H]1>FZ'OX=P!]I-<6W/=8/&E&_K:M][_,1V!\9$B0L%H
MDJ((T5!P&)SC+$HTV?F2:*8ZOD"OT#[ILA&S#99V]@!-^L)1*BHYZBO,FESO
MEC>*16LB$RJX&*3BW#4Y-;LGWB=)-F-WXTK1D*+\=7HQ&TDGN9)D*5USY;2I
MR544UK&BG;/@G,)T I[G-=PG2;;B]JXBS6'G.C="KBC32HKOL[+ V0WN$!+W
MD.HR+B=3&?HG9C*5)A-%*[G@?K<*'P> ^,Z4-BAG=[5F&VEM7?=X/UW V0A"
M,:AD8,+E>G 6(O-62):E*<ZAB0G*@1K;^/(G;?7/T5U-N?XRNC>NA%WFA :?
M%9B S-9R_]JKQ$ #X516@A?6%]XXGWL[P*&RN1LO&#;AXU0RN5].TO0<;^IZ
MO:I_<%W]02N73;W2WAJ'3"=JE(_6LI0\:AX%3[+1W1P;,1T_4[M/#=S9&>Z'
MBR:7N:R%=GU5YP[@VMY6M07=L>ZEZHG+W31R !&#JR7GD.KU;RSSJ)FV"NJ-
M2%C+$4#*0"U(32KO'D$E]]X@=0R1=+%_B\S'Z7SQNKR#LUNIF )L,IDAN>LT
M.2='6!"80Q0T/^OD<Y,;V^\@.<9]3[TQM9K3>)"9&^RHO\.E:_\;3G &9S1S
M/LOG9-_JX"_(/;_RP*_!:I5!9$D>FG7DL#G/&2B1F)0H0U1<R]!DS;(3RL>D
MEW;T;!Q#>DY/>Y82.<SYU1CB^(R>M]\556N>TDMBV7WH5K+&= !'<4ET.G@M
ML@N1\^4& T>!2?G1=IR'VV[_2[XV/JN1'7>XTLL:S<$;HQ18[0S)E4P)H#TY
MZ/0O7V/-PV_RNOO, U(B-S^LD55WJD%4E(I<R"31:^ A8$K**&>%1&XDKC%K
M#U6&?H7Q[#_A[ *A)L[.QI^7 ]3+"0U5%\MBU/O8]_Z']F+GCMCOW$QG"WBK
M!0]<9QNC2#&EZ+W20:%SHTZMZ-WN^P\9NSYZ& YV&E!0:V<1E27E!QJ>13 R
M\:"\#PG@?B8.'U_N?<7-!ZXRV1'F%S/,T\E;3!>S>DG1<YB/#QF5^H8P#+^'
MV&5UFC;D4YM,<TA,.A41@L@UJ=L9H:+V>+\..H(Y<+/V^F7/X0PF"=]]1%S\
M-IM>?*+W_#J>T,_&<';C7KZ 3\OC4%_74;E4T62=6 FQ'GS@FGDA!9.&&NY=
M%LFTJ?YU(/"#@U:8UW,:]3]UP>\SA56WN?MY/*^+MD3<*$>MR-N6#&NBB$YD
MH6B]9\5#2J"@Q#:K&SLC/,(NT)"JNQ,'-V&N07S\-YC]DSHYS0KO:L]?>DLC
MI- J61$)#F:F.5(P9R&R1.--!&Z2+DT.8:P#\YT)YV ^&JR=?9U!KDY)Q"*-
MHD8R, 1%2[#,6YY80F=\43(@-AEM5H%\9]HXB(<&B:J7*-8-:HEB!$FBK!OG
M]4H(;EDT*3-R5NF;9(S63=96-R+ZSI32#S,-DDF_2OA6=#YR@2))J(QF5$SC
M\@81@J>B0BT5#SDV'D_N+&A]-U(YG)$&Z9W7]<I?3,\CM;\V]\5T4FNLU/93
MV\?T'K@,TRY!?R%'BJL2T3(0I&=M4F'>N,!*IL@X!5&,;A(D[('U.Y-8:S9[
MS.:\AGRK+ZQUV@WAT\4PLDAUR&)@GH)RQKW*6D.VHDVME.VPOC-9]<A1CSF:
M=TWS99UQ+O-V4N8V1T>>O$KDW=<ZGR C,@')^<*MC:%-E<H=P U6%?68&NJ=
MI5/)L+O5L)LO_V-,P^PL??SRJA;^6.9[2*FEU4$RT-(P'81A 6M*<\P8?8I6
MY#;'&G>"=ZR\N_Y5L5EV?;'3XLCL-;2KY>%O5XYO\%ZE >P"MFE1U"YHCU02
MM0'MFY35C+.C"\W9&+,HCM'@KFNB?*URI3DK()W!H)#[-K4MCB^P^^J@GIJ^
MNE#54E<O)Y\N%O.E!<1U+E&]8S!9RX+/@J YSH!'8&@]^&(L5ZG->>G-F([H
MO_?/YB;='$A%BZ([:Z#)*VA%HU:) %G#@6FO"62IBR'(42H))N@F59FV8/K>
M5+(/%0.-)>H&FL"@';!:M9-I898%(P3+F:=B 8Q9O>*[G4K4]ZF2?:AH4;OC
MZPR\7(/_6G?<6ZF+S89%)V6]L$6QD"$P%!*S=4&EU#B'8071]Q!<'<!!2W%\
MFW3S>B7IYN^3:9SC[',UQ%+A].OI)(W/QLLUTMNMNNI,N[1KD-"KYX8=/4H[
M1#^;5'D*Y+><'_MNG\FR&.UH,*<@A6D3$@LB1F9M*>BL,+PTV1Q\6*+>/3)\
M")KNPGD#+?]M.L$OEYDXOUY,\O7QDQ2TT3EH%I6AN%E&P6)6G)D0H_/)"$Q-
M3@>MAW-$#^^H=*\F3!W.58.8\L7T_)Q<HC&<O0'RC:Z=4VE\R1(8O=_4PG)
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
M<TKZ'I8?4AG6>*YM"HR0<::E$(1/Q?JM0YV2EKG)GOZ#2$EO(8@N!C]22GI
M+9WPF15G(],4P# PRC%PFL>LHY7\*26]&Y%[I*1W8:%!2+GU('!6161#_0&D
M!>H96C$0X%BB6=.6)(M/C11RP@48CNJ0]$97@UI76P^+[H+MJ4K#?E1V.8*_
M#P]#5VDH%E/BJC KH!XBE8319F".RQASBC:&)H4_'U:5AF82Z6+^!M+8<#3<
M&F,X5$#USFZ:AVG4%"*S'&CB%*)@$DVJY3V(H_B=*-OM*'X7>P_DE\QOUNB_
M7'E3;_'R>,G\X_C3LE,@M\J MBP61=Z:$Y$%)S,3FGPJ90N*-BK9#^Z3+].8
MX@:UJ-; NNJ$NP ;8/7E+K+3\6_ZIG=]--X3-^W69]8 #%S*D B1-"$P'95F
M,8!F18>,0?AZ5.D1B&8/A^=HFNE"20.MW-['(X#7*<$YFZ**8]XC>7U% _/<
M&V90904Y.Z_:5-I<A^9HRS2'LK5:(O-@4S<I255W=&\.M;V:IJ]+E@[0Q.*
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
M1DLEQ^G(HU"F=LM:/^P,/R^6=91;(W^QC:0I(&SF#!U/3!<?R:26AEDN4PT
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
M(WZ(J+N7!E 9<LBF=E!(GI"5R"!96JTD9"2/FVQY?*:\3RH-T([V,1(^5FD
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
M*+:V\8G#T_9L.HP[VW_@PL2:;^MOLEP0Y,=I& O  JBK4D=Z9H8IP!2'D9]
MZ@>AS8@\D##/D9EOHS6;T3DT:>862+-A>A$\(P_7703KVW.8#,^%N6_W*/DO
MMT)>)N?EOHTG\UP>/#AP5.O +7WAK!!WJCWE_=^L6'XO=)&;#V+]47XEW^LZ
MGNKG^C:Z>"/J_VY3(!(N0HAY#((H3M3L+"' (8N!#$4:2RA]@:TBXR]7:6[^
M?!WTR+HF><M<UV=?B;4^@5^3[Y;9*QWTFR'K3-H;8]-4U1'/K/%J<YH:75?>
MA[I'E%6C9*=T!Z=3]KM<JVGITAF*!_SJKN672<SQ]KLH6%;JN(GF0C\. YX&
M*0.!SP( H> @E=@'G!$U8)#Z,[(J&N9<P[G1=4?!ETO,<-B/%L>)+]4[4QQ'
M.DK,T+%S?HD93G;"G!(S'"KYATK,<!)CUXD93@L:F(Z^2GE6I83Z1(J/156X
MAU>A=6IFJE19\"3T91HRP,-$*I^<!(!$(=0Y>J @,9*"6_GD!C+GQN*O.YGA
MKKP'4GB/552R9G2>+Y>D*'7VG9K=+<G=I O,Z-HQL",3<(-IDR).*:P^W+K"
M&&]BOI72-?TZ3.AN#I'3=.T&8J=-QFZ.PT&J=8M7AY'2SZ3X7:PUQWW1 ;Q5
M4.\B0C@,HQ@"GU/E>5)%123E%,B(!(P&/D+,ZOSNF)"YT<Y.1Z_<*FG'+D>Q
M-*.32Q$:F3\ZX'PY#XXU4_19[Y(:CLJ9E OZ+-T?_+W/7G:YO%X;JR5Q'=.O
M%L@+%/D0QRD'+$:Q\CS2$) PH( CZK.$AB%":,A5\D-1<QOYV_O.:_+=&U)-
MJP=5L]'O!JN1.6 +4[/QIG?:VFH$'US6T#J/QA@WOH](>Y'[W:>M/G6;N^<-
M=S[!ZR;S 66I/C6(0029KV@"$8!E@ $+J?!1&!(:T$M=@]?S3# QDH?PVBJG
MA".\7L)?N/)>NTX788#&V/[#ZY=(!F%@MXDWL?_*,+JX63VJ1O+BZ=>\^/UF
M]:G(F6@VW3^+4A2/R@N.0PB5<Q&#)$01@ 'Q 4X( I2$@HF$211:[64;R)P;
M?6A-0;8"569[I:P=<YB ;,8@CJ$;F4FVVEYY6E\O6WF-QMLCOU9K=[1B 9%+
M>C$1.RG-6."P3S<VKPXL <?_<U.NJ^Q;7_-KSC.]:4N6.N/:S>HU><C69%GM
MD-#]+>#/.L=JF:T5$Q:/&1/UN6"3ZE _4&VP+%(8A2&F"&":J!51(B6@7#(0
M"80@CT*?^E;%S<=6>&Z$5VU;-:<YK&.-9>VXL;O9C#7GU'DC4^[UIYO75\?/
MXG9G)U=>>X[N27T_/2_77L<FAR7H)@+>:9FZL76>MI3=1#UP4.YN*KG#YI^W
M4@JFIK.WW]F='A6?R5I\7%U4''7!(4W])&1 AB0!4"VI01K['"#ATR0DB 3<
M*F/1"#K.;9:I3=1^H&B,] IEI5?_O=2);\Q+4=M-36-\ 6:ST0OWZ\@3T*Y+
M6_L\;:#N2D<%K-U-3R/VA,L9:0PU)YV$1L1Y?]X94]30R)&5:GC#]-15K:6J
M#82?BKPL%Q2'G!(8 18EJ8[B#D!*A032IS26@<3JYW81(R=ES8WZNZHV.RO,
M>F.E#UO34! GB(T> K+3LME%J?2\\BI-789]G(7#;;C':7$3AWF<M?LPO./\
M*Q?NR>I#2)'2A 54$4.<A@ & 0=I(BG -!9I&/JI3XV2\!YK?&Z<T.I6G3>L
M>HXES\-&$A)R$G,@0HD4;"@ )($)$(P$J=!F!8G--;G!L$UP0ZX#VP6(66Y
MS^M\N[/3[/0X^YBYH^P:3WYD?<RRD_O EQ]+?Q:JJ8UXI_10Q%G=V?@U6]^U
MB>N4N[;<Z Q,^AA<_3__2K[KZB]J%2TX8"DERCNB,< P82 (>922,(I8:!5/
M.T"'N3%D8X+E.!\"OAD=C SIR*S1:._IT>&U^GO?E ';G)WZSD)C@]<:H:-G
MW%',!1"Z9*(A:DQ*6!?@M,]KES0UC/ZV>7B;G+MZ8_1=(?YK(U;LJ<D.P['O
M$ZZO],8!!E#?YJ4^18!!#H7Z(V!8VM"=@<RYT5M'4V^KZL L/":0FY&<8R!'
M)K6!&%KSE@4J+GG*1.RDO&2!PSX/V;PZ>/.)"<UPU<E*5O[^213Z!^16! O(
M&)5",4P(H0]@Q%*U1D()\/U ?66Z$FQ@58"J3]C<F.:9KEZAE-7WDAIMK3>A
M3F-LO OE!+GQMZ$ZH&D]K[Q/YU$;L@MU%@['VU"GY4V]#W76\B,;4>??&9#0
M]G6U@;X]K:URG_!LK7BJO*D+3?%7F_6'?/T/L=;GN@M$.$Y@'(!0)@F G"2
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
M8P?BYW)=[!0N%E?%3C9QZ9JYK=3Z<;7[V0>Q7H0<I0&7*0@DTJ4PA ZN"B"
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
M(H ^QSX- *-! B!4PXQ"O97#2:AO%A-?!HN5N-5Y3[X.297Z7)[1IXCK3_%
MZGB?93?[R*I1V".5QD.SNNSA;#:37P3;]#E<6B6]ZWZH+DC:<AR'<7*U[,EZ
MH10MQRT^G9GEQ/,#8W'N\V*=_7>UJ_Q1[F<Y6/@$!E$2(A"%Z@^(10)H2E/U
M1XA#'D>$)58;(_WBYC97=[75-VJR7>H/,B#5RAFLS1C#'8(C\\8^>.9Y:NQC
M9XPP<1HLTR]QVN@8(^L/PF',WAJ855.YM]GMZNUW=J>:%:_S5;6#T42Q)[[@
M<4(3$)$8ZMU6!G"(,4ABCG <P# 6V"J/9I^TN7%*HZPG&FT]ODM"SAK-+7FE
M'VTS6G&&X<BLTL+7*NJUFHYPD< ($Z?I+GL%3IO@TL3V@Y261B\-/:TFI6JQ
M7._E(H,Z^ZX/8Q HV@ PC4) .)$@B1!2'HJ?$F)4M^Z,G+G1B,Z8G*^J)")J
M;JV4/KN#9H6KZ>'SQ6B-?LA<'2EK'4=-U'8&";='QL=%37PTW&OOX1%P_^,3
MA+"H+A ++"+L1Q$&::R A:EB"A(B!@(8(Q%)@8+(**G:8 WF1B3J&X,CAK%4
MH)MRR8A0CLXR0T)9M!$O%,S2Q>_%PEDJ)>8;T-+%Z**0EF<-#:CPJ6]KKY]N
ME(4KO4[0E[@;YYYR%H0\\H%D"=8WK'U I?#5RBH*DP#ZT$^,,E#UBYD;9]6*
M>EM-JXP.%A4P3^/9SU3N4!J9CHX"-*16Z&FD+.J&.D%LHAJB Y&S*RAZ%I#>
MXJ*GWYZNT.A9"YX5'3W_]##W[^/Z3A3UAM4'I71S45% 1$),(D"2)-$K0@Y(
M1"G /.$ACM.8(:L5X5$I<Z/$2LE!N]+'031SV2Z&9F0>K%&I%=2G5ZV*[IRN
M7@1<.E;'!4WJ//7:NN\@]3\\,-.5ZMP/JKOKRL(^(JGOQP!"+( :\PA0$4/
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
M@F&.<<((D%1" #'W 4W"%/@^E%10$L32:BODI*3948W6SJO4\W[3"@Z]PWX
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
M41JR?%&O-1N$;>YV6!';UIKQOCQE\(T6G6M7D!^W*\BB<\DBIKFB>PR"PFE
MGVBQOEVKO^VOU0=U9W2N!'U?=-7?SIMI.L0B%)VF8R8*6,?L(+O0]GI8!P/@
M*QX_79A\/09[P;2'Q[F%W-N=A%H,>ENV3JOL/94ZS%GH71?,I0!,4*D%@5*
M29*!2,@T#6,2)@C9A-H76YQ;B/UAO;H'JJ&'GNYI(][N7#C^,NIF(;57+$<>
M8'9[5JW"^];<1HZT,=A?,&V,C<\@^G*CDP;/QA@<!LWF-SJ6B"]6Q48]][L6
MYMRHUZ10<ZNZZ'1U^Z"W4_YG6Z!K58E_"E*^4R_B0L0L#J5, $:9SH\.D18G
MBP&C*((RDPF3H57]>"<SYD90ZEU,+<O)N\%O1DKC@SHR4S4.@-J#8.="4/O0
M*TW8]^8FT(X$VA./5>NO0M)K27LW2Z:M=W\56H<,>.73KLB95H3[1C1_ZC!/
M/)*"OQ%2*-[E;7,J0JS7,AI[%G$.69X(#$*='0U%#$&>,0YBE J<9(A*S+K*
MU,;[P Z&&'W#^U6K1Z;&UNJNS$Y5KR"LZW72=B +2&VZ0V:T?3\9[RJ/A?V$
M&= Z/OZI<^'G9A;:]$5K?MT5S9+U[7 7N.4V.R/H/9_9WI+I<YB=T3J9M^S^
MM.O4"UZO'VBQ:N43V/I^I25SWG-]/$+6)8]: F]/_BH;>B7#U>^>'OIL7RU0
M@N(X)XGJ5JE3$16G4J'5M6*6T)#$ N=6!U!&LG-N :D:()]L$Q''ZD(SSIU!
MQXQ,REMYA)Z+-\'.R:#O9<O(6WF$FJM[G@:MJS?!F5C9(YF/W#5C*"[X-O5%
M)!E&PON<9L-8S4V2NUY79:,)#E4@GH&,A1! *@F@B3ZRR'A*0IRPB%LME#K8
M,+>!X)KL:>=:>>8]9C8VC-P/(_/^.%TP=M;Z^ 7ZS,V8<[:Z66$_^T<YYF_5
M%/VZF5CO*O7)+,9)1$#*0@*@S# @&#$0A@*G$J&,0BM>/-G*W)CO]=[J@FUQ
MO),XFK'5U>B,S$>-?3=!!] HA>*&,/":,W6RH6GSHX9\/<J%&KSXVE!I:,FT
M"]NJSZ3<?)(GHK[=V3(I2!Z%<09"+24(HY2"/($4I()&/&,\CNQVG+U;.#>R
MZ8_Q@YL7_1E=I?,8:]&!4U-#U^#+USM@&YJ]0,].&+AYZM2)SB5Z[HMQXC]?
M1KY0=.@9X_.QH^^&7#?&OHNFHD*3L=N)."["D*6(B B0B*I)=QX3D(>I"C.3
M%!("$0N9I430Z8;F1OF=76VI9MOMJS-HFFY078_1Z%M0G8GM"8B;K>BKSVVF
M81S\;B2=:6OBK:)ACX\W@RY<[\8&'\7F5('?IK6] K^OUROU@R?ULS:C:;W:
ME0BG..8IBF/ (Y1HM44.,%93U%0PH6)0C++,*IO(CUES8YJZ\K=<KG]4@7XA
M%.&T[K@7?_?4?V9L-7VOC,QMNC[[0#GVK6.]<NRZ&E7G6[!S;I3)MU^\?7*H
M)\LF95R_:![RL^>G.RX@Z/(&7\2C^CZ^$5T?<'U?DH<OXH$4NH[NKO;-[IIF
M@SE:I%DHHH3H+9=(,;@@'.0PC8%@DL@TC6.96(F0N9LR-]9NS K*SO1 KLM
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
M9FAS?'P2JT&KD_*A.0J'-&9QIQO[_%WP>_7@-Z(J[INMU-N_BFK!211!&25
M5YI1X;*( 29I!**,9((0%D:QE3C9Z6;FQC*ME4'/S. /;:AE^N,94,THY7JH
M1J81!Y2L>6,8!)]<<::E2?EAV-M#3KAPM?]UP@7/0PY3E($HU1(M,>* 4J+F
MTADE.$MI!',K-AAJ;&Z<<&D=RY(:!G&^?B5P1C3A#IS75;^I%_OFL\;GLK1W
M[?;H5KA9SX]6JM>>6[G_@S5O3+D($QX#DF(&8*C(A'(6 BD3FK,LP]1..-FT
MX;FQ2U]F?6NYSF9\7*_TW-)5"/\"_(;[HB. .O;&Z"D\>^4^)E&@-T-K'&'Y
M"VV_D%Z\&2+G9> -[[<C+9TFLOA=%/??-H+??E=3K'OQ691?OY%2*(YD>OM5
M+_N\(T7Y#[)\$OH?^EB<LJ>JGG2&B?I0']:K>B=W02B,9!I"@(C6@H=0 D(5
MI9$H)3)+90R%$:7Y-6MNA-<Y%I#&,YWM%E3:MX"WSC5+T)MO(I#*Q>"[]E%_
MS\J&@-6>!56=_Z#^HJ_BRG?]^Z+U/OBI6 5\O5R2LMH]_F<S*O7\4@P3[<MU
M]<@TO.WEUBF=8!?4;@6=7X'V)=">!;5KS;^U<\$GQ=VM>SJ9O^[QVL,7Z4+>
MGHRMHZ49=N6>??_O=*GQ^#L.\LWHK)^MQ]PH3&)4C[B>6YMD/!X'H6ZT'NGI
MS@<U^!/;_$[*DJRT<KBV8+FNGM2GL#VK(=2(G&5A!B##!.C-$T"T;C=.HQQ%
M21A!%MM,/DP:G=LXW-H<[(P.>E:;'.]PQ]]L]N$;U9&'O.L!=3DO8XR0YR,S
ME]N=^M2,,1(G#LZ8W^NX+**Y\!6I!-<S>[&JFEB"BSR*"=0S!A0#B! &A$<Q
MX"$B/,8IS@FQ6@0YV<S<F*>F>4"UF3J<W]H9B+_TWRT/O9R!UG"!XVK QE[.
MT :V6+5BA\&M?D_OA?Y[DV*CB[&\O8"=_6K&(#1>URY.MS3M2L6@MT?K$L-7
M7R><^T4L:Z& ]1WYZ_=B\^W;>LF+U?V[=7GF52<)A2ILB0".%(' 5$"0QXR
M+ XY3O,H3'GHH(?@:H_1US.]*(*R/OBQ,[\*RL8O+0>[$IMV":(2F\U2-#JQ
M:UD+[FZ> _*#E-QR*=:Y.PV#HS%[9U)!WAN=+1CT;+\)+K">?UU>5Q3'4.FU
MMN5%-'M=$3NGX.O\/,?=[G;O7%</;;?3WZ]4J%<OI+1:^6F4J!@L9B"NH[.4
M9HIAJ0 DC+2\"4FIY%:;WI?;G%NHMC-9U_;]UN9]%%NK+;>^#4 WW 'W"^78
M&^%[*';9,SN#/98R< #(Z[ZX0;/3;H^;XW"T2VYQJX.H^/J[*+<+(GG*H<0H
M59"&'$"><8 3G6DC(<VE0$EJ5DCNZ,ES(Y3:N."1W(N_66B*[V$US!!7(3 R
M#S3.^UP(.NOM-<+B>\^;3EG\E!M[TN(G+W ;_G]9K_F/8KGL2HB_>2H;Y8!B
MS1<,DURD' $IF4YV2RB@89X!3AC)0YJ0C%FMR@PU-K?OL[/U)B"MM0&OS=7[
MJ,I>NP%_$&:SD=X7>"-_VCO<.D.#QM)6K-C?R&X"B,\A?;"]2<=R$\\/!W&C
M>QRR1L[(C;TF2_:T;%)RZ]/[OSXM-\6CSF!Y^^K]W4(2EG-(0I )G57/1*IF
MN4D(4DR%0@2B-#6:4EQAP]P8YYP^XDW =HZT&B$WP4/KBUZ<T=Y8) 0X=MDP
M34W4$:,')N?T$GL^M'(B-\&OD_>!10;&^'TQ4;K%2'UBEU5Q'9J#*12.CYXN
M7^(ZW_>2(ZY\E#=IY2^"K>]76EOF/5?&%++0:92W524V53="WJYX)YI9B$K]
M3KWLO,VZ[/^"U7D=U6?R7)]<2'(MO,QC0*6>MQ(4J9$ME2"AB*8,,RY):%?+
M;U+['38M1AX7.P/59+FVL);?)(R53RJV7.X<N5I'>,27PBS$GU]'OZ1V\<[U
MH.][T#B_FU[HUZ'G9M "L$MU[_U2STK:MZF%853YX_%[;V3AY!$=>&G)Y?'[
MQD"L>0(CKCV^]&GS391OU#SQN[+XNZ@^KC>#"\+55Q40-AO'G^0[Y>>*%639
MTZ)4_NQ^O&[JO'[07Y?Z\^!P3I0+FG'ULB9<JEDBTLJY.$X!02A)PRP3 B&W
MLU$OZ-7<YIW]@T*_D&)5-8RZ5B]A%7S9Y09\7*\ WVW@[,#K;> XG])ZR;?,
M;'">A:TS&K1[ *A78Q-<VMNK)CIR-H/>&><\VTLZ]D*'Y6;0E^=/XLW!.-><
MC\[HGG6:^C7IOWIN+:^I7\M#?2L>7STW^D];%SJ[7CV?>MB7HOJS.<>?T3Q)
M89X#04@.8$00T'EX(,L12VE&A P3N]21J4R?VS!]>KR]J8?L3K'.38=ANK?!
M-*=ECGT\V7#JWKT.R3%3(^TWQV8RZR=.U9FZ5XXS?B:WP%4W=Z,^HF([9]X=
M6-F%]TF&DB3E$J0HUH63DQA@A%,08<%U33:.D)5DH$&;<QL[NLW?>F:WL[]=
M2K/5JKT,N1G/>P9R9((^@JUWJ$TQ\QB3&@N _(JQ7FYV8A%58QR.Q4_-;W6C
MH%HPM5UT:U?E5""O3R,U_U@D,L4XY CP)$X 3'D(*&,,D!3".$0PR2*K$/A2
M@W,CG]MVJZ:5Q]84M-93)Q>A[(M@FS&/3PA'IIW:5/^;%:8(^.25BVU.2BJF
M"!PRBO%]UR5D?MB6_49($AC3&*2"4 #C& (<808RF"3JG2$1LQ,(.VIA;H2Q
MC5;<JZX?HVA&#%=A,S(3V,'BG$YYY/H8.90?7J:>^%D?SV5+'E]XC;)YK5G\
M1E2L+![KQ;WMV\E1R.(L%X!**0'DZC\$<0(X2:,HPB1-16XO:WZVO;E]\9T<
M=RO"W3/Y"@ZXA+D9(WA$<F1^N!9$1T7SB]#XES,_W^0+:)E?]/^TD/GEV_S5
M4*AV,W-&,:20"I#@! -(\@202$*0AD*B$"&<)59'.H:;FQ_/:/.N+Y!0V2YU
M^(-I(A(Y*(Q0C;3"88;+V 41JA=:US#SWJ00PHF[W.AC*TUV2JV*XI2%,&5
M,*JBE#2, 4X0 UQ$4 4JL<@CJU*N0XW-C3IZ6GX^U,$&<3;C%%_HC<PH[L!9
MLXD)(CZY9+"]29G$Q/-#'C&ZQ[F<8=G$-\V?[U=OA!1E*7BKL+[@6(1IC E(
M9$@ C"C3^?(9D&&*8LI3J;C$;E/F0HMSXY/.O*!L[+.O&'@!8=,]&(^XC;X#
MT]@8_-19^W-0K((MDJW%7HOJF8'CN13>A4:G+F!GAL&)LG.&-]IQ3)WE7#XO
M[GY?)"%3_Z//UD1"ZWVE!%"&$$CBC+ LC"B)C4AD]\BYL<0=*7Z0E1DU]( 9
M_O;=W!U[G^/V_>^W'V^"SU\^_>/]Q]=O@T_O@M=_?__Q]OK/^=C? 5&(]N+F
M>VW_<?BI]AXXR;=X[$#WL9WXC=N(_?JIVJP?1-G/Z:A:):(\DJ$4:0;B3*BP
M/X$Q()QAP/*<)D*$24*AS5@]T-;<OK_.U$8CK[/5;J@>@M9LD/8$V,A?\!:K
M/3-'D'0R@,/G@#S4W*1#L8'?AX.PR2T.H@^Z+NRR?85QBM,H@1CD$*4 9A@#
M+!60$8X@$0PEF46QC]Z#YT8%M6G!ZW7YN&X.+5N<]N_C-?S)7X/"Z.&W!N#B
MYSSLO86 @2,*$ZD2&*)AIS)PPN5!Z8#^]=/I 9RP<N^0_ZG?.T8EVAI=W+4^
M*UE4?[YZ?B56[-L#*?^LZXB&J?I?*F* :(9U_0((:$PR$-$$)H1'6<2%56AR
MH<&YD=*>O8$V.-C:ZU2O]2+BAA&+1QS'#ENN@- ^=#'$Q6O\<JG-:8,80P2.
M(AG3^UR9IMI\DCKMH[I=\:^B_%XP47U=+_DB29D,A8A %$$$((\20+*< \4S
M,(W"C#&S .=R4_-CEVJC3P6[+5$.0&I*(CZ &IT^&HQJ,^ODUL[00%OJDSHN
MH>&7-,ZV-C%=7/+ZF"@NWG&M),+;A\?E^EF(]N&G=;EOE\OV"(RN*]O)/#2"
M>]K&JCD2%R=(D$Q P(@*8Z!,(D!SDNCRKUDNA*19;B1X.ZJ5<R.FB\5 VB(@
MC3C,:_)8;,A2.W;3ZH2YG90<YPTP(\,7[]>1>73\+KU"4V $R,?1"/!IZ N=
M^1\!Z_-G^,=HS&$][51*3R?M\WRW?B4^DX+?2D6M_Q2D?*<^ND7"(B:E"%4L
M&F< "IB#/.80X#S*I)KVQA*:+[O9MS^W$>'NFR@%T19:+$PYP&ZP>C<NF"/3
M\)G\OYNMB-KSC=8"HB+07MP$->2!=B30GHP+OL7BX;B=,-$:XUB=8;<HZ0[E
MX-JEPV.G6^)T]WEO)?2*QSC.4;KC]V_K>EUZ%%NO].']>NTN#F%,XDB-% @G
M $*=OPFQT'K^B20(Y3RU6BT=;&UN(T1C8[ STFE]=!A@PU#>%VPCCP76B-E'
MV"9(>(V4!QN<-N(U\?TH<C6ZR8T[:CTK_<12?%.A;ZW7H4]L:\V/UZ3Z]FZY
M_J&5/T0G!%(3EPJ(EZ2J"EDT(?+MBM^1OQ8X%0B+"(&$Q;IZ3Q@"3 4&'"(B
M<!SS,,<V5./3N+DQTV\K%;K6<]G@OM9?_&E9BR_^'*Q7 =_I A6N,HM>>]:,
MXUZJOT:FQ-JM8,^OH'&LU6C2HO35MT"[5VL@BCT%IRY$._2S7M-0GOICUC'P
M]TG$7NV;E+?'0/:0YD=IPVU4^"(4Z11L(WA=K;I+^L$P$U&, ",A Q"G$<"8
M0:"('7/*TRR%5A4A3[8R-Y[>&1E4VLK@:5784O%I.,TX]6J01B;''CZU@2.D
M_@U"X).?3C<T*=$,^GK(&,,7.];A+M?\B6U^)WH9?O-<Z_B095>G=A'C",J8
M<Y *G .8Q0)0E*> 1BE&G)(DBX1+M>W!5HU>]^EK:G_=5<NV+(X]C+$9,7B
M;*)-GHT*=$C9[.&\_6LC5EQO]S3F!YW]0>N UC!H3_S(==GM"IT'V+[HM1%N
M7DM;#[<X;0%K(^^/RE2;W36;2CW-E>HI0DVCU)W5@F8A8Y%, $H8!A BK0>)
M.) 19%CRF EH=9QA"J/G%@IMJZB46QM?O/S.<4^;L>?<^F]D#AZYV$YS0_W
MSOE9E]@YVU4SKZQS;/>_>D&=LSTQ01V=\VV['H#_KIZZ+I_?%:NB^B9XG8_V
M46QT!D$ERN^*G5@2\XP@"'+$4P"3F("<, 1REO(HCQ&)(JO=&(,VYS:,=)8&
M]]I4VQ/PER$V&P \ S<R?V^MO0FV\-4&WP3*9)V*VAGM\R"\,4)^C\)?;G;B
MP_#&.!P?AS>_U8YSJG*S^%4]].'IH5U."GF<T)2$@"') (RQXAB<,!7AQCSB
M81;QQ&AU[NC)<^./UC@SXCC&:9@>KO)^9!)H[?*XPG;6VX$/6MW3^YC5OPX_
MY..'3O*YGO6E^RC/7_#R\];FDD44)8@R'H(H%PA FJIOF%$&PCQ,DXQ'F91R
ML5EOR'+Z66ISB149; T=,06PD^<GS9R%M"Z\W,2T[<KIIZ'V'?2O.>F\4+_B
M1>>7^WTPU]ED:^6_[-QQ'^4Q9XH'+3FJLZI7N0T^:"I0C'D,(.)<_2>A@*8J
M4J,T41Q/B)H&VBFQ;A\]MRA-6V:IN;J#R8P\W9P?F?2T42/L@1[[ZE4?=??T
M:;50C[PZTCT]OL+AJ,6[]=.*E\\?UO<%:_<R?BG73X_MZR8@PQF.L)HKI2&
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
M3;O7]+D4CVVIFML5?TV6R^J3O/U.BJ5N^-VZ_$J68K<UM<CB)",A34$6YA+
ME*<@IRP#:2QX&)-4Q+'5J1$O5LV-;#JG OTR! ];M^I9:Z5,KW0L]T#*/\6F
M_LRJK2O6*@\>^M2,P2;OJ9'I;K^3=A[=!#V?ZAZKO=(]]D;036\+705[G:-
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
M6 #IN9B)2<M35RNQ0.-$.1*;N^W%P%ZKZ>]Z6?":$NLDD=N_BFH1*>J)(,(
MI3+1LU U M,L!(BE64@$SA VJEI\OHFY,=">E4WN4O"'-M1" >P,F,/\XP>B
MD;G& 1TK$;!A *Y5 #OS],GDOX:]ZVM_7;C2+1+Y(BJA;OIVN^)OQ'>Q7#_J
MP+E566[3;#(J0TXH!#C/4P C&0,21PA$4*(D4=-#GL4V88A!FW-C@,[D>CSE
M.Z/M8A(3L,T"$L\0CLP0>^CU[ U:@T<H;&$!D,\HPZ3924,,"QP.XPN;6QV7
MNM<J+*V*^Q51TZSV_9=,9$D:AB#C" (8(DTV"NM,1"01)&9($KN:."=:L?DV
MIBF(TZOO%'Q<;]17TED<D"KXN^#W^D39^U6U*9]<%KU/(&VXVGT=>F,O<QM
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
MC0&D, &$J<Y'*:&4P @+S&S& H,VY\;OC<DZ.Z<S6O]=FZU/:K>&6TESV72
M&2-[AG5DEO6"J#6'6F#DDQ=-FIV4ZRQP..0OFUM])"3?KNH_WO[W4_&=+'7*
M\^WF-2G+9V7%/\CR22QXQ$D&8PR$+E$&\R@'.><,A+&0*1%4:W*XYRE?;']N
M7.4Q??DR]F;4-"*B(]/40;)S&_*IO_2L'V$^[PC8>%G1ETUXP61I8WR&<ZC-
M'^/&:^](4=;/>;]Z?%(AG-8VB[M-.)2%2.8"1#226E,H!)BIOX4(QK&,10ZI
M5<'%@;;FQE>U;4%LQU-#6)IQDB>$1N8?;650FZF/H6M#;X(6L!'DQ0PP\4DQ
M0\U-2B<&?A]2A\DM;C3126*_$<V?[U>?-M]$^4:H8*L4?+MPN$@RE,B,44!(
MK.9E/,T!$1("GL><)2'.$F:U'6+:\-P(I+8R6+;F%<+RR*@QWF:\,@:*(Y/,
M5H3]I\[HGX-B%32X=H;O]B_\\8TM5C[)Q[CM29G(%I%#6K*^W[4"Y[K<M,,M
M%$CR2&&<(\( C(2BH4S])Z,B1"G)0RD3N]*8VV?/C6F^"MN,Y3Y09OSAZ/[H
MB^+*JA$BCA/>^BUWN'O\Q'4(C_PZ+A!X?(E[]M3_]T1*]0DLG]M<GRS.)$^3
M%&09YLV$@J2Q %0FB< P3; T%BD]T\;<OLYM9M#63N?4J4,TAS]=3QB-_ G;
MP^.4-W4&  ]I4X=/GCQKZHQKIY*FSEUZ;;&]+NV\5T0/22*%9'H6@ ',8EV;
M4P'(H: 1#UG,L=4L8*"MN7WPG8&ZAK!-M4EKC U';C_(C3V2]RH*;@&<IC#=
M65C&*3AWW-P+%9([Z_?Y G'G;[ER[?&VJL2F^E7-#9[4?.#3ZHO0NA'%ZOX5
MJ8KJM]6:5J*LY;#JA0V]^;QB:LI0;T:_>JYO?[TD5?5F_4"*U2*,J(B(2%1W
MP!1 J#J$"AH#(9(D)K'@(;9*%!K+T+EQUVYA3[-7;6U0FQO\T1ALN8\\6@=;
MKJ:^8+>-3)Q6?>2^]#H2@*.LV_JV]646?4="_.R*\5CM.6:._O>3/M-.JTU)
MV&:14LZH(!E(B)0 IEP"DO$,9(Q2A"/*"3(Z='/Z\7-CX<:ZX(_./MO4RWWL
MS*C2'9&1"<X<#/O<Q9,^>TT]W&]AVLS!D]X=)?Z=OLI1[[CFD"VEO"DJMEQK
M/EE$:02S-** $ICIS.U4S0S5!RQ$SGB4",'T(1ES3=&S+5E]RY.)B)+:7$NE
MXK-@\IBQ"!(!PA0I-F0Q!3F'": YS#!#,,%$6BE'>P%SB@-%M:'!0SM(!603
M2!VQ?J\CUO4J6*U7H.P&KH#JD<L7Z&8TZ@7**4+&ZB;H!?L[.ST*/U^"PJOJ
M\]G&II5\ON3SD=[SQ1M<%!S$JEJ7OY+R3_7LK5+KG7BH_UHSB"(.P7,$<,@B
M $,! :8R! SE<2PP$YF9B*I9<W.CD<;@X*&Q^"98;T6)-SNC;50,+N(]3![^
M41Q[M:X!\-<.P)VJ\]U( -K(0?@$<BI9B*L M52',,5G6"7BXE,F5(LP]6A?
M-<+X+K=@^/53M5D_B/*U]F"U:0Y8?BFJ/]N-=X2S/,N@BMVBC )(4:K5PD)
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
MI(#BC (D1$R@A"'$PN[8Z6$3-M_<-.=*7_=X[R;XM_!O81@%CZ05';4]5G$
MJ!E[70/2R,34HO.U0:<K"5J_IC[/3)SVW^_IB(,V)CX'<=K#XQ,/9ZYS^\"[
M>AZWJR/=@9T2Z7;_/!0"JY=? )FKP @RHBN:APRD*(IRGD4AIE8ADE7K<PN-
MMD5J=.WM(TF0GJ"NLXR[7>>8,<EHD(],,U[1MN8?)]1\DI.= 9,REQ,VA[3F
M]A#'FD/GM58^%"OQ?B,>JD4:DA!+G ,"8PD@2@7(<9:K0"?1,\$TILSJ_*A)
MHW-CN&'1H^ /;7A06VY;%,BD!\SXS#>N(].8#TCM:_A88.2U'H])N]/6UK%
MXJA.CLV][@53WRFZ(\M_"E*^4S^I%B)&"*98 $0T$4$< @Q#"FC(,ZDH*<1Y
M9ELP]:"-N?'.MB)H8V>@#0UJ2^TKIA[".<PJGD :F40<\'$JF7H& 0\E4P^?
M/'G)U#.NG2J9>NY2[\''"8DWW>K=C_6"PUBH: 0#'A*BHI$D47&)"$$2"R1#
MF!$DJ:=HY+P5<Z,)]7XEWN*. ?"O#D3\0/J2D4FSJ\8.Y4IO&NI1CDP2K%S&
M<:+H9<"0N80SE[&RB&\,'N:^OBQ*5I#E9_(HRE:O/X(L3T,J01R+7+&=5+,P
MIN9> I*$BCR,<(3LM'M.M#(W-ML9&3QJ*^W7E8^!-%]<O@J>"5:86V1J \>H
M<3 $@>]%YN.&)E]I/NOKJ>7F\Q>[)C-6F[+0@XE.L7[]5)8JREJ$F,@\2D-
M4LQ!/>,A62A!RGF,4D@9R:TD_$ZV,K>/?F=D?3;C)F"-G;;9BJ< -?OXKX9I
MY(^_A]#K&J'7%Q!R2#H<0,!ODN&IAB9.*ASP]3B)<.CB*P1[Z&4)!7HHH= *
M);S]2[-1U10A5M:MJH+5^V#1(D5YS*(0@ESHJB=)C #A"(.,9!2F,!>(&RV4
MC&_JW%BH9^E-0.[OR_J01U!T5KML=(_8T6;$-H_N&YD=/6CN;%5U]MZ"K<O-
MCKYG>9U1N\6[FLXXUDXOGC,JZB>U<L9MT6T$ZI_*Z4(EGL89USKZ*44,0![E
M@$8Q!8Q!1%D*82QSFZ'C1!MSX_S6K.!1S^R;PC.[TW4WM3*^^M&3>D0]]=>'
M6;M44+:N;(O2G +=C,:OA')D_MT_:+<-3H-?=?E(ST=]!Y#P27FGFIF4JP;\
M/"29H4M=M5[;YWP1]9>QNO^Z47U9+0C# L8" @2EBBX%3P!-8P$PRI)$QJE0
M_V>G^WJZH;GQ1*M\VKW86VN#QEQ;0=@SZ%[>E?.%V<B$X J7@VKL,!97*\B>
M>?S$:K+#3AXKRUZXWHX4FL48]KRX^_W-(A,J1.!)!C(99D"1@,Y\#E6,H'?@
M&"&8)T;GV/H/G=O'?D>*'V05O*G+29A]VGL8#7_&KIZ/_,DV3M\$'\6/UG,/
MG^DI7P<^R>[RYKOL_G7X<>X]=)(/\90;W4=W\G=N,?GG=574TX._BFH1YPGF
M$"/U96GA"YEF .,L J&()2>Q&H3MI"C[#Y_;!]?9%ORAK;/,HMM#S2R:=L5B
MY$_0% ;KF/F4OSZ#Y;WG3QHEG_+L,#P^>8WC$'B[7#9C*U.3FK8(,H($AS&5
M@%*8 YBF$A"9AB!)29)P*7)LIC<QU,C<OEAE8K"ST;*T]"":AH/GE1B-_"7;
MPF,_H [X[V^ /=7(M /N@)M' _#0M6X#\JNGJEB)JGJ]?J#%JBE=+]CZ?J57
M@MYS%6$7LB"[_!#VWT]%*?CMBG]0/RZ6]=*'^MW3@^ ?Q69!9:)&<\44D(4(
M0$ASD.>0@"2'-)69"/-8V,CP>;;/BF0FT.IKU"*V*5BD20XGK1?U$9CES@_]
M>^V(7?3@NXO- I 7[+B1F:_S+.BYIC5T.N>"OG==OO]MOTM['@:MBWI6XG&K
M>R3T?494ODV<-"@;"=_#N&ZL9N96@^<7]8A-U95$.! )KW_YAFS$.U*4S5EJ
M* 7+,YZJUPIG %(9@CSE6(\R$=<G)4*:6F< S,&SV07!3>V>>VUH6[KGVA*D
ML\'ZQ6O\C/ANS#\;P; "4(/1KOS/B4H1]26!ABK06(V2QS"G_O_7*")DZ]S_
M(R6&'/MTN@)$K@:ZA0R_?;TK!:F>RN=7Q7+Y5;!VL[Q-6T]1!.,\C8"43*@I
M8P8!)E$&0LP(AEP*8B<9.-S<W ;7W_[V]6_!IC'86I+] K)F8YL_O$8><'[[
M&G26!MK48&?K"(<$S&#QR<,76IR4',V\/V0LP[O<:.3]ZKOBLG7Y?$(-)0DA
MAC%3P7_*$@ QPH!$*0%82,4E"9(9M3HQ.=#6W AD:ZH/#9HAC,W8Q!-R(U.)
M*VC6+&( AT\*&6IN4OXP\/N0/$QNN5K7K@Z8JD:P;!''F/(\BQ57T C C$A
M*)0@1#B6(:)))JW.$)QI9VZ,L:]PUU3AK?,]KZG+>PYC,];P@-S(C+$O?-<8
M.:KRW2D<1A+ VVOJI73P3OD[((=W\G)'>B#5M]M5?>Q)SYR^DZ6>,]UN7I.R
M?"Y6]\U"49*F/)28ZS1Q!J!(,T!0&&N-ACA$81YEJ1U9F+0Z.^K0E8_T[D5=
M6TKL[+8D"R/$#:G#-XYC$TD'8?V7GLDW =&EI1JK?2]@6:'DE6:,&IZ6=&RP
M.*(@JYL=56/6I2CN5V__8M_T4H_ZIU[5:2?U241RR@0$298+ "$) 8["'# 9
M01A*(>+43AQFH+&YT4]K:R!:8P/96!NHGJ\#14L>&@3:C'Y\P3<RZW3(=78&
MK:$C+)R8(.)5N66HO6D%6@P\/])A,;G'1UGX;C/X><$(% A& M"0J4@&Q3G
M4,V"$ X)PIS)G"<VZ3EGVIE;FLUG]3"]]U0?;];'W?2IMX=B53P\/;15W;MJ
M7M=4=M_A;$8@'M ;F3N.ZK1OC1RK%OL1"N.57-\U]8*5U8_\'2Z@?GSY]8=C
M/RJ[N_.QL0AQ+C! '"8 4@P!1DFN @[%$'DJH8A#U_.QNV;F%EO<]<[#+G5F
M%]L_,SOJ*=D>^F:L<3VF(Y/&X5E9-< MG[@FD:E.S1[#,M;!V5Y++W9V]MC;
MH>.S)ZYV3 <3]P_]$WC;W8(TAAA%E(,XUN=Z(,P!3=3?,I1E+(=AEB;<*COK
M3$-SHY'6SMY94->]F+/0FC&$#\!&Y@@GK.QS=RX X365YEQ;TV:V7/#X*-'D
MTO6N&[9,[P:+-Z+Y\_WJEC%=0K3Z(I@HONN<U042G+%,,B 3!2>D0O%$)C(@
ML<QX!KE$%-L5OC9IUN@CF+0(=F=C4&Z-M-VZ-4#;= _7$X)3;>8V9@8_=0;_
MK',%MXA^N8RHP[ZN.41^-W@-VIUXI]<<B>,M7XM[7:M#JH]7L]LGJ5I;/PB]
M>+M^>"S%-[&JBN^B_>DN;D$X3Q(,<ET<$L8P!$0D$L0HDD)@+.+8:GG5LOW9
MA3.=^7KFLV=WT!CN'MY8=HQAU#,>W&,'0SZ0=JCOZ(27W\J.=B9,7-/1"9_C
M:HYNC[FB(NZW]5+=436YP N9)R&E-%1Q%4D!3-(<D##%0)!$Q%)7Y9:1S9KO
M<1-S6^[MU>!N[?SW_Y7'$?K/>MMZ8.W2%%)(<X+3. (Z+0# +,E SD4"\A1%
M@N,XPRA=/-89UJK[R\T4P!XV-QZ\K\1]L=+%Y@-*EGH)[&H\&4XP3C,&LBS1
MIX;C6&N[9B!C.8XRFH0II"V>;U>&<P$?:':-C8>E:L$GD*8CY370C#X8[HS[
MW]TQH=O-IBSHTZ8^4KM9!Y^)7VGH\XAX+V2\W\KT58I/>GFR!/'I*[WI#+Q>
MJ^&/UYL;Z]5=25:5%&4I>+3(8<(5'R@2R)FB@SB7BED%!1FA44YE'$4IL0G$
M;1J?6Q2^9VBPV5EZM0C >?S-6&0L5$?FE]/']_=AOC. V<>9_(MXC7S@_GS[
M+WV:_B(R!D?E+S_#CLODNGQ8-")R7\5#H9SC3TSU^:]D]215Z%[7:G^]_G#W
MIDTCBB/&<A81P)),A8DX)  SKDLI<Y0EL612&.VFVC8\-PYKU0;W; _VC%??
MW]]N N7 W\QHS;HKABEM3(!'IC,+;"\G?%V',6_KZ-7?VXM@O6?!+#"_?OAP
MQ:L9.O3=>D"(PB1&]7!@_;Q)A@)7+[MAP/E^UV-%RAN==UI+LA35GW?J.:V\
MFTPA1 F3@.*4 YCQ&) TCP&C:4945^ D,1*0-FAK;D2_9VJ@;0VTL9;B>28@
MFX6HGJ ;F<*=47,X8W01#[_GC,XW-_%9HXM^'Y\WNGR+8^I=3YIIQ4\LXM"8
M2\PP H3FD0X;$ST19B#%(4[3*.=,8IL%VTL-SG/Y=D_W;L6]+>=>A-^,6GR"
M.C*_?#A \NTP:O:9=X90>,W!N]3FM-EXA@@<Y>69WN?&-+=,A<-/2YW"4LO
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
MO?8/Y[N:&C/T)?V/?R\1+/ZK3HNZ??;DAPOHNC%$&,PB<T1?R/^5M%5)3L?
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
MO>_7R'CNC,B9C.;N[P^CIH\K,Y]5M?W,%O*3VLZA("1+%0-(,0@P+6T!"D&
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
M;[;6H@WE.);;6*,8TI(;!/E(5IV?;%.Q\ 8AZF'M#6M_J.7WL%%B47<T+[#
MU"8,0RED !,;F8%3#7(J<UX6K,QDYF?R[1N?&B_W9?,U\'J0N5IVPX"(;M(Y
M8## CCM6-JP!UVM_9,OM6+-CD^W$,_Y'T^]76SO)I33C7;5_6!L0SE.H88Z+
M$J#<P(-EQ@#+;(%66N1$* *EFVO Q5ZF-EL;09-6Q%GWEZ3>B%S*3>0![/4S
M["!PQ;ZI&HJ4U]'V521N..,^W_9HA]U7U>N?>E]_>& ,](E<POM$D#@O>0$I
M!RHE"F ()6 2IP#B/&/$9CXHB%_YTXO]^7SAXY0[W27-'NS6<AE@MY4]&&B1
M:>%TBO%9C#R93I $C4.\V.&X<88NNA_%$3J]-#ACBBUII-ZIYL^/J[HBVBXY
M9K/CF&.:4B5X 1C")<"%^1LMK$.VR@75:9EGD/H%"KIU[#1#1HT4;(H7-AF
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
MBN$.A.GY$.]0'0Q.:"V476ELI[\OJG_MMWS[@H XA1QQF0*4(02PTAB4 A5
M%)IQLZE2&?&Z!7?I=&IL_D)F2P6_;)39)M>WG$U\G%7$/]OU=?3=F#<TII%)
M]26<5M[>.9CAR!BE%7T@"IP+^WJ_8Z?$=D;B1&9L]W<CW5F<I<1]N/U*?C8?
MW"?S";Y;6Y-ZKF F(*,%X$5=HP.G@)*B!'F*"TX(,Z:K4QQ'3"&G1GK]S!"-
MA+[V9XR1#'0K$7E\(A.HS]"$OS*X ;M1;PJ&R#FM"X(;D/:^%[BEKV%,_WFS
M%DK)ZH,!YMVBOOO>FH7D3G]<&7XS__RX^O+(JX5<L,U"6:^@-UHOE@NV5=6<
MP#1-<X9 @4IF&)T*P$J: _,SB""!!/MEH+Q%F*DQ=Z=+8C^YI&+-]I4E5:>
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
MLY$9](/!Y X"MH*([QTBATJV)W@\HR]?+]\O_IA/;-!2^T12**+RH11Y5EE
MD$JHHCW%8\/9D%NOWR[AQ1X)-O84:T_(V&R6KY=OEHO/TWG"2729<94<[969
M@1+>@C/1@O0Z^.A"]&:X .9N&K;#2,=9T<$$W!-0WBQ6ZS#[/]-/&Y=*\,"L
M- X21S*$DJRA1Z$!)>/"DAF,10X-DVL4; >2CI.E PEW9(A4"_ADB6%#MRHR
M9YT4B.@)VIEI"%@,"'+ M67"!!SB .7J.[>#0<?IT;T%.++BZ]GK[,W'Q?PB
M8^-DD#(93<HJ1#LW#*(G1SH9XYT5AAL^Q-'?S?=N!X".TZ '"7)D$+S#=+HD
M ',1WT_7,YQD9:)D/A* N0>5BJ#P*0@H.L<B1+",#9$2O_G>[4#0<?[S($&.
M#(+WRU K7=Y]/8F+V<18ID*.!%<IB'"5,CB1*4)RV2CI19$L#H" :R_=3OT=
MISSW%V$G!N"G+^ECF'_ 3:[6)A51< D\"07*6TE24 5,9%8[QHS/0[@!=[U[
M.R1TG,X\6*!=A S/3I=57&?G>178I(/3U22;XATW&0RK1JU:MIB$A,!5#N3[
M2,^&"QKNIF$[@'2?OAQ P%T Y>6<GD;BF'[&YV$=SMF:Q"A5M"$ +QZ!"-<0
M@T_@LLXB.E6(E0&/1^ZB83N@=)_$'$# 70"E'@TOGX4U?E@LOTY*"2H703B7
M6E4764&0FOSDD"5FETH9Q,FXX]7;E6AUG[_<7YQ=H.'=29C-GIZNIG-<K298
M_\=4!FTM@3GE E'S#-YI34$34VZ0M,,=K]X.#=UG*O<79Q=H^.D$EQ]H$_QY
MN?AC_?'9XN13F'^=:&]=T$%#]L(2J"7MA8(G*(GE)&4A'OE@J+B3A.W0T7V*
M\G#Q=H&2=Q]Q-KN@/D:EBXH)K$H&5*[P3HH#&HN2 BRI<+@-Y.J;M\-$Q_G*
M X79!12(\)-:)K)(O[_[2');O3Y=U]LE-0:?R!A-2H&#)3<(E(@,/#(')EAO
MA3!9Y &#E <HV0XJ'6<V!Q;VR-!Y<H+S7.M57\S"AXDCYB.3) 2L]6C6*HB6
M(7#O"@FK\*C, "BY]M+M -%QEG-_$?9A-HCR99B]G&?\\O\AV3W/++/> 3?U
M;D/PFGPDYR 9S8)4JC [! ;N?/EV6.@XY7FX2,<^^3P+I5],5RG,_@/#\N)J
M@S=,>U\(S5RJNAT6")DI8"X6%YPQT0]R!^Z>]V^'C(Y3H(,(MI,[(]^8>$$_
M61&^0U2."X@Q1%#2:'!2,<@48F>K?(FI#("->UZ_'30Z3GX.(=:ND'%V*>J,
M"8JZ@_2L@)0LU"L/ 5QUHX7%*),0W/,A*J_N)6 [='2<\1Q&M(/AXU]^O"7(
M5_2#0ZZ4TS8Y7V&F+U:+V337W@%/PZQ>BZ> #->KZSQL>]?\NT\=[!+Z;O0?
M>#O]= 4?0O@TV13@55R\+B^F<WK9E,"Q.+MQ=HFY:(H)00D0L0AR/!(2YAPY
MHT8DU"';%//MQ7>Q]DI8Q0T:SM]YM@!QMEY=_.3F2MR%N'W-S<4[GJQ6)-M+
M5C5A'BWWP+*S4'VJLZM5S :;N' FN#O\D\-9O4[&.#??FV'BP@X-(/,1-ZCK
MU)\[8I=,6&U2T4Z"4*5>H\EDH2.YZ<SJJ!47/MV59Q\*.#>H&1<_AZCW3J0<
M(NL. /,LK#X^F>?ZUT__=3K]'&;$S.K)^EE8+K].YQ_^/<Q.<<*MLXQ\-<A)
MTH+BKC:(R X$TI;OI5$ZWI%:.QQ 6U'7 Z .0L&BM4HZP-DO8?D[KD.<X7FA
MS!0OA#9Q!J-GR"$5KVD1"@,1"0]*4E!0+,O&W7'E]G!T/4#3. T]VF%J*/%W
M@*0G*=4;HJNWF) 6!['T*ZXO>$DAUP84'+3+$E3V&8(/$D+VSDAEM.9-O,&'
MB!JG#T@[+ VF@ [ ]'+^F:A>++\2"Q-KO L4JH)B)=(?EF@7MH#(6LD4F$KZ
MCMN7AX/G*A'C] 9I!Y:]!=P!.-XB"6":*-;=;DLNH;"<: ^V"6NK Z'!*S3
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
MC+O$/(@@%0\449<V P*N4;$=6![5\?+^4N[ QES<Q[VHB;Z42-8VL%0+5YW
MVHO>02S)0 XJ%Y(/.1M-@H7["-H..(_JU'@0V7=@9F[R\32LIFF2I+#2!0,R
MU:[BDL)F7S2Q8X4368?@8Y.4Z)W4C'N",XRBOX.>W:7>(72>3V>G%-1.A$N%
M25,@R-I04%&H$PP*2,):YEF(CC?ISG //>,>S1P%/OM(O@, _1WK)&_,3SY3
MN/ !?ST]B;A\76Y5.E_*C$3CA7(9,E<<E.<!0D@,M!524&!M-&_28VU70K>S
M6(^J]*6IKAX1%L\LM92Y)$NK-4630 EDX$J1M):9D<CHEZJ)B=N)RG'WS;:
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
M[Z0D]U#,W>&('5NW'7APU]W/('.6Q0C(.>#91'0?)7$0>.;6%@IE_NQ-AL>
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
M0/WI"_DB\P_XEM#^>EZ9K?_5$[_/87:V!UP,/*J_(*_Z^@^N?'(BT5GC:P<
MKV,=28,0D]>0328G1M12D"9E@PUX&=?2-DL@C*WU#H*F@Y@]F^1QNUCO/)B\
M*M8S44^L<$8*:TD]G).VE*YCFDAE/*+T]+WS30[?CLOFN)M"L^72,58ZV$(.
M,QM.6$4&HFHC$+-&&=J6A07&@L50B'%LTJ2B_;;0[.9-GSC?29,']MTG"2S7
M'8!7F-HCQAM PR6HC!%BD(&6:W8:O2(7\)&"M]FEG4[!NXLF.QE!<M&SYO(,
M<IXO Y)-(YM+L<:D!;,^ .I-AU<FP',*EVV0*I=,K(DVT>2V%(Y[GZ?=.5T3
M#8W=S?39QE^YG'VW:8"0SR;>DE=S6LEY>KK^=;'^#US7*7D3RZ.0$@5(94AP
MWA?P4GOPGCE!_S,^WF@M>4]3TUW?//*16!OM+XZEB@Z"M!MM5U_'=9C.:^;E
MPFM^L5A>O\OT[3:FL5$5:R7D>B5=I7J(IZ0$)IU2TC!:ODVR$ ?0//)96%.\
M'ENE':#WW>FG3[/-QA)F%QO+RWE=N&<ZO12G=5IY)4#HH(@M1;Z'4 RXCU9D
MI9"U::JR)7WCWHALMCFWT$X'H#OK5_@^?,%5M?B_XGI2*/R*-FG 7*]UHJO3
M6&BY,F6=R();8UM=X[Y!RLBSF%IH_/:E[4/$WP6 SNY'7)!O-1<JJP1H-W=]
M# >?T=.W.EHM EK7J!/C-3I&OCAX%.CL+_@.<'-0_'TIP(+,2$6K(QK,-?=9
M('#+($NE@D19G&NR%PY"_7;FC3VZK?+XJNT$SYN+"=>Y63\+R^57\DW/AK=;
M+-$'S2"&$NL$Y "159?4LVRM\E:V&72^%77C;K<CH.8.W ZKP@YP>5UDSVJ0
M7[N8QY2*CQD$9G(R0F$4T]M"$1JWWAGN FLRON-.:L;=J\?'W>$JZ@YG-3EP
MSD="5KO$:*"0NXYKY@:"91:RD[E(R:W234S>?02-6Y+9&]KV5%0'@#OL (=%
MQ]RFYTRJM[LT>=ZTH!08M ')AA?;IBW*(RXO&A^ZQU/Y8'42@P]Y?QI6T]6B
MO+GRP#"G /"/\_:JY*>\62[F]&4Z&Y-^G:7M9KWO_I*!1KX?R-U D]]?+S^$
M^?F\MF^SY^LRF^>KI+TNYQGO,/LVEOX2Z5DBLE3JM$$6R%&T@>QI0.#%Y*A=
M+%8W,3&#4']P\[Y#B'@^7:798G6ZW%S'FGZ83\LTU:8RWT! STM37+TGC3^=
M;2[":)^U,A9"KG;%4ZP:M"N08\CTG3+2-JFM.#:CXP9IQU\9MWH1]@RLP=RB
M\;>-"T$<9?NX?-E8V\C=W':UG3#DBLN0@:EZ2:IX"\Y;!XQ64S2>"Q?Z,W!#
M;2<;A;XN-];IU[,_OZU5DZR0W@?P#$E&P6<(IH[ZS5*3:<&L2I.TQG;D_1E,
M]RXHO&FZ&RBQ@SCT!>TI8796MCW)Z!(O:(%)DHSBQ8%7!<$9E[/G1>8V]U.O
M$C%N.FU\F.VMD [ ](:(7IZ1_A;3+*Q6&P]E([_+\8//<966TTWS@0D3*9=,
MBZ60YP1*F0SUE!B<8T:SDAWCM@7@=B5TW*S;^*!LJM@.@/L]W^J6E9?9NA"=
M@)!$(2MO!7BO.8B,)%E:HUXU20OO2NBX.;?Q@=M4L1T ]T68+C<'>[]@J(%A
MY>QNQH)-QDG%(.:D:N:R3BZ*Q%A4U2MQ$GV36H.M*1SW.MWX4&VCRGYC>I)R
M[5ITUKAN49X18=-U.)\L^':Z^GVOX'V+IPX4I>]*_T#A^.;)!,K?Z.W+6DY\
M[=Z_=+RD&GB@JNF>6C[L&$4?B2L3E!$YQS;-.QZBZN"SLJN2KF_ZE@C[MBA$
M*(E<"P>A<'*54S 0N1# 6!'6&ED":\+Y-L2-&SH/AYA;)UI#*^8Q6ZOWM9-K
M(YMU_NRC6:Z[>#F._5(A:Z8]&)8(+"92W& C0BJ%%R\<[6U-,A!-[=>[]!'S
M*0FT-C^[(OK7I;[VZ=?ZYXN-CJZDD00WM6*: BB7ZY _#K%Z$L$Q1RO2)^::
M1,9[T-JU==L!3[?N3#16VV,V=L^11#UK9.TN'GXT<W<G-T>Q=SEG(U+QM#D*
M<N5-H-W7!X2,1>?(M>':/SI[=\LMV&PGDX+&,D>A-:]W,A7%TN"C-&"5,P5S
M--RT*5JZDYR>K=8NJ/BN3[:[\#O(:]SBXNG7]_1/GWR9KB:&I^1--N#-YEHO
MF5=OI(.HI=%!>*M-DS7S $TCUYX/H/+OH6A/^?<(I<K(\\4)+;J)L2('7R>)
MVAQ T18-WJE-U[S(O7:%%MQQ3-(E39U!:5^]?]<J[:>$'O!TNEHO3G!YBZ5?
M\"3B<N*DRC+: %B4!\4MN8").W \YF*<- 2))IAZF*[.<+6O_F_B:D!E]("M
MV\OO*<[3QY.P_'VS!I4M18OL(:EBB!\=(&A3&_G(3(&'Y(8UN9_Z/<)&O@1S
ME UP?TUTB:P+;LY7(4?%I7:)^!&.A,7J_0G)@:$1Z*0S\DCYTQN$=6:W#H+!
M=S%V@$XZP-CYI/8ZIJ+.)JJA3&V@?F&CSTTR1IL*3P%,S-4D&UE[_CO(W@3R
M+T3TOM'EO2VHZPUMAP#BULVIH;73 >3.#_=7;S'A]'.U^N=\<(PYBGHH:B+Q
M$0+YJ2D[2%'GV@0[!]&DWO0^@CK;((<$UB Z&!%+J^5Z\DOXS\7R8BFL-I:=
MZ,LL^@Q&Q@C*:@:!U[&HPB6#Y#^RK8Y2Z>E7T$/?W43.W:\?^9[G< [5 -(=
M&1N_AA-\7:[Q<+YJ,!KC%$47%/SF6NMK(&97@+CQF7O/==YF-MQ6$+F7BG&V
MK"'4NAA:QF,WBZQ-;687D6=D/%GT]8*0!$6>(46UM8M<;0V?J\O(;V2[[^D#
M>>6AXZEZ(/TL!A#6V$I^'Z9_A/D[/)FFQ3R?UK.F7\+\M)XZG2ZG\P_/%J_>
M/S_G2TLO7;(,,)1-<86%:+'4;#ZW)O*2C=@*!#N\=!Q/HQ%(6@E[;!!=$Q*_
M\)<R(G(,))9<I41.F%,B R*%D5H'3V+<"BUW/7T<AZ(1+ X67U?Z%^<,Y.)%
M#AK!$5A!U7&](?#ZK5&RQ) CRMWU+W;0_^"5X,?0_S[BZR!TO>5COYK.<=-Z
M=K(9O&GK=!EGR(MR2)PH%:$DZ8I5M">6-GVV[B5IY-X=1\CO[B?]'G'T!I?U
M!^$#\@E724@5##!=[ZHC,HC,"PB80]#D71%'1T'2%:(ZR['MJ?COX6E?+?1;
M%59[9<_I)U-<S7&]3^G7C2<,5-_U$%T#%7%=O.+KE18,%\4ZWGK%,\'$>$>H
MR9F3QYD\8$99,Z;<A287:QZ@Z?"NN+<>?:6>VQAC(_E540BRNMHQLKI&0LA!
M28*S*;J)27F(J'%-RE#HN-TC=R U/!:;LG\)_9W/:6)?&I;&/X0CG0A .9&'
MHY4$VD\L."$HUDE*Y612+*[)>49#*W-17_VZ7+[DO'OD1L;?H)YS]MYG!*T-
MUC,IBNF-$J!YLM'%%!-O4O2P+8']6I]=4'-?^?N@ZGDLENB ^O:[']3$%K6L
M6W\(5E+3\[W6$)/AH&@;@B 0P81ZRR$KIU63$5O'<'G>AC]^"82V:9BM?L7U
MZ_*6M+7\C!0>.!M]XAQ8K+5DF&L72$E@MVB-SJ5HUZ3N^/ND]6N =D'*O>[/
M,"KI(%2_Y.COB^7O+^=OEHN$JQLL,<-9\))!D8(DI@D/7B4'.B19$L_9RD83
M*+Y+V[@U#,UA-I!2>L+9B^E\NJ)M_.?%(M]@B2>7G7&;;"G%#Q8%N%POZ/+
M8\I<Q\8V_'[:QJU]:(ZS@932$\[J!!?%"\N*A)%M;5!<A &?1 );DC6,\91L
MV[S MG-SFJ6IFR-G5S'WVP?Z2?JOT^EJNNFMM8>/??6?#^19WTO10/[TT]/5
M=$X;R[/%29S.-R1^N_"G<[U$8PP8+FG=DR8A<C1@O2RV]A^RLLD]I(>(.KCI
MY>UGWYG'LEJEI!EDX16HJ"SAN5I 5;BP!EULTY=H._+&]:P'P\RM7I;#ZZ;?
MR/[*RMX_P7C[(</;G8:IQ0>1Q#5:Y3V"]G5^1C .?'0%HM:"RZ)SEMN4,79E
M?;YEK]YB6GR83_\;\\M,2IJ6*>;---;51O0$TR?S?#%VM=["7JU.3S#?3'(5
MPQ7R1!NVI?V[R 0Q2P]1%LZLM<'$)I?7!^:C8WNV"PKOSU4>7]L=^.'?V*^Q
MQ1I?33_7(</K,/\P);YN\+]Z$Y84=-RAC&\"<(EKX0T#Z^JQE2D,8M$>@DLN
MLN*]2TUR78-S,F[.X@B 'T/CCV*O?Y+SYN\PNS*[]("\_K:/'MXOV)Z38W@+
MR'/MJE1(.@%KSI6!Y^C)1RQI8S:3:].E_BC>PL5;KHA_]?3K32=M4B+WL7@)
M(=6#M6 W9UX,M/483&UI%YK<EMV5T([W^UUP=+_Y:Z"O#C;T.[C:7*_Q%-PQ
M91DX3(QD)L@OJ2>OD5NAF#-.B":' _?0,_*$\Z8@N"=B/D0CG0+KS$NXZ,;!
M-2^N=A.6];Q#12O Q>1!%,V,B=[+T,3S^RYE?9BR@_2_!:;V5\;85QJ>AEG^
M8SHG5_.B^0JW.2#W M!Y7:=EF=H-FT$03DF,3/.;E9'WW&>X]>C^L'" WA:#
M"7%L"/QM^N'CFR4F$DIU4#]/$ZY>SM,Y)X5Q)5*.4'2]Z9<P@2M* *T4K"/*
M!'J^%1P>?$T? 5\#: PGW)'O4[^E(/6\HUA"3_;1 =_,2C)"ULLZ!I#\PF2#
M"L[R+?::K>Y/7[YU7( <Q6G97\H]0.,<T3(S@BZ9.Q.)9U6'R3A6+(2 ,0BM
M@A?;Q)G;@V/L.]9[:NRFSO<0W]C--Z;SZ<GIR<4U7H<J,^V(<%D[*DD.OC@!
M1B>R;T)[ME5ARG9]-ZZ^>63-[Z.WQ1!"[#,L>75Y+4L&S12O,[=9;2.C>0:7
M297%>)L8H[62F^1:'B)JW!*EL2/?_733)\Z^W=-[7?Y]4<=$U<84I-!O^?.)
MCT9CH-547+V_E[@ ;P0MKB1S<I;\-G&LF'@+<KL+CO:$R_=Q.+3N.D+HE91I
M'4<U):6='=@LPWQU1AF?F,B#X08!A490)>8Z6D5#0E:D0ILR;N,_#Y&*OY?(
M[N*Q8=$XN)[ZQ.#M8_5P^YCQKH/U9V'UD7[Q$WWD<YC1/UU-O Y*&>9!:\1Z
M;9\B8,WJX;HNSO-L<YM[%&W9&M<C.";.Q\+"V-FM=SA?U?9#R]^)T=>?-@M]
M_N$]GFR^/%WB1',FA')8&QX*\MT#@^!1@]?>A,(\Y[A=NZ?OOFK<0N?!T=9
MOH^C1N':H@EW+9J!*A:V?U&#^H4]N3Q&-8,KRFBN*2CR=<*V+1)B(@/$>*9(
M.:#4\A^@FJ'X;&KRV*,D'UGI M'X##FKD*+UQLHF?N2?J)IA%QP=7LVP@[XZ
M\B=OGIVF; (O(D+)(M%.D14XSABA1$;M0^)6-*T[?N35#+N 8,MJAETTTBFP
MKI^V96FYK/WXE2!)J1 2.%6;A3G#G% \%]MDGN0CK6;82?\[5S/LHHRQG?W;
M!_%:VVPB$Y"#KD/94JAWS2V@9UXS+9-QW_7('F<UPTYZ>[B:81<AC@V!AP_<
M<XC%%&G.KG$J:SEX$1QPA[(DKS)7=BLX/.IJAKVA,9QP^]R'OL7#3$JGL02@
M"(EL:BBQCJ"M72J1&6$U[>--YH$=?'S540W$L*[.?KKI"&>-DG&TA"T*+L#P
MS;R.A+3^8@0KDT*--H?0I.UL!XG9<8[#=H+?<1.SNV#AS[8RSKJ<G7WRVU ;
MDHFR/$9;=R7%04G)( 2MP15=)&U8WJ2FA0@MF>O.T>APE0R!BS_96KEL33+1
M/F%0!4$2VZ"2EA!]*>"5C%$*I50Y5B+U<&XZ/LSK937LI_D_&?S?+!>?<+G^
M^F86R#"<[:"?3N@1$YX3MXYL@M.F9E)<K($1KT=A6>58>';'ZJDP/'<=GS[V
MLCR&0<;8*9 A)7)YHOL*PPK?4OR_?EU^6YW_TXG2-B=/(;^6NJ83N /O@P$1
M@HI!2>7#=L-/CD?S5LM /YIET+/&_V3[QC57\LT2/X5I_NG+)YR3<.;Y]?HC
M+L^%I*5/R=2.##I9VEQ5A&AT I=$UA%985N-&.PGYGB(VZT6E'DT"^KQ(.=/
MMKS.)1"#%4$Z!):RK0U6"@2=/&@DXQ)0,ZZ.U5KN0%:V6ACV'WIA[*'SP=IC
M]H'Z<]-PY1?/SYDZ'_T]B<4&[HH!'T*I_?PT!.\L\%(B-]I*]P@J;[_'Y59K
MQ?U#KY5AD;+[,O)GRVB.'\+Z_+-]+Z2+$>=OPM?-@92UUOC (P29)2BG/&VK
MT8'A0:&*/.6C50VVXW*KA>3_[T(:#"E_OH44/DWK3EG#O]=Q-OVP>=S$VUB\
M#1J$8/FL\U.H%B8EKZ+/UL;8M(M1.]:V.VMD_]AKYG!0_.D6RL7V^SY\N?++
MB971EFHWG*U%Q0D%!&X2>&$<:BMD:EN]V(ZU[1;*/_:I_ "@^-,ME#H!@05T
MGA<++"+I1VJ$P(R%*(77PB8F>?=E*MO.JN#_V$?NNZK[3Q;1WVSHNTGOO?\8
MYG5TS!_3V6QBE0@I4V!F8FU4G3C%:9DK"(4E1E(+'IM,\3DJE]NME'_TX_@A
MH=)!/OB2[B Q\N(])%KN=<Y%!J?JJ5%TAK%2N,4F];.[H>_QG7;O)> .@+'G
MJKE@]]Y]1J),FCL.,0L#JF@'45 \8KG.+H3 +/:4T_D>/]O!]O&<3O>D_D<Q
M5^N^:0##7"C_WM.'OT6^$S_'N#J>(_FE(5O(VCE05M3>%60\BT_*$(AD,<<Z
M31GOZGC,TBAN(O@2)2C!'#CG$D1=7+#,^V15"R'\B:Z.[X*C@Z^.[Z*O#C;[
M!Z:;//WZ2_C/Q?+9+!#3FU;<TNB8$4$X5WO)B$0.;CVX$EHJY83);2;)[4#C
M([MBOA-8%L?17-^@_,;8K^'DXI*D9TX:R04(6VL21(@0"\G2IR(++\KRW"2-
MNR.=XX*S&5ZVQ^7!RNL F\_Q,\X6GS"_Q_1QOI@M/GS=%%ZNSF_6NHA>>0K[
M50WQ5%&\WK$U$ U*6XP5V379K[]#5[?8.QP3BW8*Z@!OSTY7Z\4)+M_B[,RM
M^3C]=,&*E%I%[B(PR6G[,+1"HV2!I,:R+[Y@]DTF0C] T[C7W(Z)LZ$4TP'&
M7E>UO%Z^62[R::J\/ WI=UHX%]P(DHFR"M!$6C')4PR/F@-S(6?.M3:\23G!
MPV2->X7LF$@;4#T=@.W],F2LDKE8+"(IC9%K<C9$(-$(#RXG3N&9K4.7-2./
MN 6\;A(R[J6K8P+J(!5T *'[NBNI8E32R0"B\F1V-8.@6*28RG 7M/%6'*L3
MR",<A')(,#J$1CH%UHU^/-EF(\EGM%S4<60DKIA=H8U>9AN\B$;^W^EM>^I_
M]WYG.RAC[)N>#_=CXMFZI*4%'3T98.D->%,\D"%/43CD3-WH?-&LV=68?=!V
MT>?VS:YV$>[8,+G=T2TD(P-&!!$+@F)UBK4-%L@>FXC)L,2VZX.V7UN\,7N?
M[0N'PX38P3[T<IZQ[)"OL\2%)E[ :=JP%4^*0@ O07@5#&.>]O4F$=J.=#ZR
MH3Z'.$0M-=@_0.^,6 0K5DDFP,8ZR=51N!$C>061F\0Y$ZI19G0/6L?=*)MB
M9S><'JS(+K#Z9KD@AV#UEM1(E-1.;.=)XMHOY&*^)[D$-BL)P5D%U3$ Y[V&
M5+>:9!0*K=N@<POJNL;CX1BYA<FA%=8!"A^LUW(Y.2.X 9,9A4D\1PA&:D#:
M@%Q61L6V<Z;V;F':+!TV=O9B/]UTA+-A:YY7$RTPJ,JW,L&0!VT+A.P+R")M
MH15M3%?5F]_CI[M0>$_ ':7B?3?M=[ (+OAZ(*G^=ZR'PL3Z9UR&#_C;"LOI
M[-6TX,0'SI&7 MG6XEE!;$;'%5"TJ7BM4HVJB2=P"-'=A?+#P/EH>NQWF-5%
M7768WV)]GPKCAQXW4$GQUA0/5$-\I?+\YON>3U=IMEB=+O&R&%2KJ*36Y!B8
MZICRP,F2"04^*!MER$6;)OO83E0>'O+<]X;W)/2G]-'?)PJ5X!@]2$;4*D:>
MM--1 3)C9=0N<-4H'/\N;>-NSNWP=#O0&59-C]**O3]KCSVL+7M_I>=V4XMV
M%_6CV+7"2M#22,!<&PI)QR!:5FO>46452=>Z20AY5+OV+2J\>.VWA9*X$[DV
M2.:9I*!R'5LI-0F *TT+*"D1FS2/?X"FQV3'=L'/_9<D#E-+!Y'#-U8>\#DW
MB_X;BS)(+KRPP+D1)#HLX+E X P#EJBC9(VOZ&Q-Z[AQPAB(;*/&#I#Z &-/
M3A;+]?2_-WH][UUZ@U?KHW<YUXBHCM24Z"!8&^JM=<<X\S+K)I ]A.AQ3P^/
MA]VC*;8#$%^LT\5#Z_3%:1U._7W>D[>TF0CBV!ARQ47,X%W4$))4QN:4Z9N6
M=G@()L;-NA_?0!]=\8\R1KKXU0%7RW=X>ONHZ4%^1@F?+,\J<P*.K1E#I1F%
MV2(DP*B5H_W?&1/^C.'3YNS,!.V9X1ER=!Q4) E$%1&,15K&Q7G%&X\GOT;/
M8PJ;=L'-%F'3SNKH80\GW6 ]F+\X!GB''^JW9\4IT7#!HK40HJYN2**ON.*0
M3&!.VQBX:5*:]B!5O5P3/T#O-[$TF!)Z0-09[>>E))H9D;+P('V]Z4+;.41A
MZO0W3^0)-(JW":^O4C$R8H;3[DW<["WJL2NEWRP7$9^%9;X0QGE=$$4Y6EL>
MH="*J;V/&'CA*8Q77J;(@D@Q?\]9>N@%(R-A?WTM!A;>V !X]W55#YBO,Q ,
M-YPI!<@E281;!0X1@1F36#)9BR*VTOY=3Q_Y0M<PJC]8;!UL$/==-XJ<666E
M .WSIM8@@.-1@4Z6Y.6LSK+)A?C.+P .YV8,(?A.\7/][DEAFF6F$&S1"937
MY-='ED$7KVWFK.3<Q.EXI/?\=M+_SO?\=E'&V+O2B[?O?SZ)?SNWJXHVTXQ$
M:E&27#,D>^VY,<!UPAQ\T"6[K;:C:X_M#P,'Z&LQB/#&5OOM*V<)DPC(+7BE
M))E92:Y4KB4B-MFLB3=Y<[; G^7>WM[J/TR(8T/@X4NHTJ(H6@N03-7+C"*!
MKXA6!K47,82BPE9P./R&[S$;>0\%C>&$VX'[<>&/O;HLDO7.^"RK$V8RKS.+
M'<3B!7!AA$[,%=NFM>(M2GJYHCF<RWJ8L#M"R]O%;/9BL?R#HO:)-DJIX#34
MFTZTCC! 9"BA<!U9)'N!ILF(CCMHZ2-;OZ=V[\'*OJ+N""T3+KPOBN@V9!M!
M!;*.+LL,J#,&QV))ODGB?;>V_JUQL;<F[VOFOXM8]X;#)UQ.%_G=.BS7@X+B
MLJ7WZ7(Z__!F\Y:)LR7'3)Z5YDAB"3Y"8,Q $=H*+32/J>G\A[N(ZJ-.;6CP
M'"S^CNP+R06G'^9G QK3U_?+,%^=-4+\F1R]5XO5:H+&*RDQ PFG7L"QFQE:
MBM:+3X%L<E2LZ9GZ]TGLHZ1L:)@-K)J.0#>))@N9I265ESK$4!+) 0N4Z(0V
M4L22QY]5T[P\:_!-;1>Q'KBI_32_.O3NF$543W+>A*2!'ES_Z>9M;2JJ'GQ5
M^_*J[3D=I=8JZY1$T 2OI&OK2F<AV!!!%_+-4PG1F<=_5>7B92]//H7ILAZU
M;0RO%BIS)6A]AE*+S"OOVB004HF<53*ES<31N\GIPT<?'C7W&;H#E/$HZT9O
MB;6)M;OO+>T-W5;\C7/-N!C&ZA8JF"-HU:.Q:+P'8P6/#AWR\OBO&6]_RV:2
M5?:&EADX:1QY&!'!*9< K4J*5C!*TR3!N3V)C\D6[H*N_:]&[:2T#J*$G2:<
M),TDCQK(?2:/M]0 J)! '7U;O) \A"8)U$<XRVA8F!PRQ6@'G?4-QSM;IF%@
M/-2QB.2(F'K6&4F@O !/)HDD*$;G3;:,/^\4HUWP<N 4HUV4-_9!]4\DG/5T
M_N'VI)SIY42 FLK6IM0TMR^@:&5#1.F!^92XKL>L8;NNPUN\K%M$':[I14.Q
M[PVCS[B,BU;3/!B/,F$@#D2H,Y:8JE/#'#C-K*1=P23;)$.WUS2/;@81[0.J
M0530P3[YT" EE.0[%&$H+O>U+IE+<,Q:<"%+%13]IYL<(1PZX:J;N4.' &LH
MQ72 L>^,4!).Z%*D!LL<F5U66\593RLF\UBXB#S&)C ;8,)5-P.)#D':@.KI
M &S;]2^618581Q :43LU9!D@)I/!A"B$4<Z(V*C_VE -IYO-MC\F](975@<(
M?$" KRX+I:R02EL?0.2:4)<V@#>ZUK0DIHRQ6I9C3\U]M5,9XA%NSHR5^]A/
M2WTC[^=E/7/Q3 >RW0B!U6$%0M)7=62A<RH(K-/8Q;&S'!O"N@U"]X3"]EC;
M72]]X^Q)2J<GI^2R8K[:.F:B.&-68 +ADJ"P2&1P)6?P6AF,TFKEFK0'VIW4
M;F/7YE@<0G=]H_-77$^0"^-\26!+(G_%IPPA2 ]".LS9^L2R.#(2B:QN ]OF
MJ-M5)_LC;+$.L['*GVZWT6I4_'3_BXY0^K0EE^,TF;+,!\XB:(=DQ2AJ !^E
M!(TYU X+PLJFMS:.7!1 @=4G7*Z_OB%%K>G=/_W7Z7035)VYSMY1&*4]@JF#
M@923"0+Y&I"E$<%QXPIK7!+P,(&/J2!@%V3=7Q PH,(ZV(1?SLE@X&7KG%?U
M'US.I94VZXS$BK8(%*IY<-$82,FA8I&S)!I-^[J7IEZ.^X<$P:U<RS :Z1=<
MEY-+?:H#J2"SJ$ 9&>IL/JR74D/*@3A-32I<'Z1J["%R ^E^.TSMH8@.4/5L
ML5J_+N_"[,I9'@\FZ0S(. -5DB7:,8!%)+O.57(Y-3D NTE)E^C91\LW#[D.
M$GD'F'F',_K5AY]QCLM0W84G^81"G>H8K"G8.7>"+YA3DAR"+ IH4[M"6\<@
M2$YQM4#A:X=SX9MT2-J)RG'S'^VPUDY5'>#P7K_A6_B.HB"S)0 /@C@JA4-T
MDABD956*Y;)@D_CG^Z3U<M[0T/D:6#\=(.YJK/^ZW(R2)L%HS4)D( 4:6C]1
M@S,J@+8!-1I+OVUR ?YALL;=1X<&P<UY?<-II -\/9PQO"/35.]EDGW_):Q/
ME]/UUV_1N<L*30H@'=:T)4KPTD1@: )%YD9CFXO00S$PKG5LC-E1M-PWNN]B
M&JOW4ZMTRHOI*H79?V!83JQ6QB0IP"96RR(4)V<H<="LB*"*+[G-Y*,!:._V
MO+<AZ X:-',X AX=Z'_%+^OW?^#L,_ZRF*\_KB9%"R%,,J!]/22O8Y C)[_<
MR&AR%,HIW21E?1C9W1XG]PKU@_3^Z%!>U_'[/Q:3H%V,,G*@S=2!TC*"MY9!
M%*BS=271CCH^N,^I[?:PNE=,[Z/EQPEEPB9.4I')TKH$HW,=6*\E1*,C<.EM
M]$(R9IODN?:DM]M2[Z[AO+.F'R6@7RQ.EQ-A!9.")*MJ48K2M?*%0F8HREH3
MK)68.O"T+\CMMGR\9SCOK.>Q[Y'>SV+E*MVHX7M2Z+67?'J?F NIUN@S6^=F
M68B91*M(I-$(QIG;;DK+ 41LA5+SIT3I4?77+T[O'*A::_0FP1>-4GC@-M?>
M\R&",UQ %KI8BSJF4 [$Y[TOWPJ7]A\1E\/HJ]_RS2<I+4^)F&F(T]ET/<6]
M:C/O>,I A9??HV^@JLHWX6L][EK5$]+ZQC!;7:)*AJ(*5PJ8912_9,TA>L[I
M6U^RM)9;WB1*?8"F@\^Q4EJ<SM>K\U=<O.&:G+_5_'T;>QLC6IE] 9\H@%.&
M413'68!0O!72JZ1EDV.%/>D=^>1K($S=.O(Z@O+Z[3UWF]?-0?5 9NO\6<V,
MUUVT'L&$.28,#UP#WWA,1:NS%$PI,5J6"V;7Y&"ZH0G[5L%PCY2_ =_X;$3V
M"$[77K.B=J>0(=!V78HSS :'32K:MB>Q7T.U"W+N+_,>5$6/R38=<-_E_H<U
MLTXM[ZT\!#)ND[.FD+>>%*]U9QJ<*@XB_<E-\@3!)JFFAN;I)U+QXBOBII/)
M-2&?-4E?3[(-4:4L0>>H0:F<P6&.4"SSED7!BVM2FO9=ROHU1KO@Y*8Q&E8A
M':1UWX<O>.$#GK- ,OMU,4_G_ 3)M(@ED7N)U70'!B'[ )IG:R.%R 6;..O?
M(VSDVIY&^!I4'1W Z[PSSM_#<AGFZZ_GLMKT09F6*>:+5>.5%ZJD#$P48LO5
M^<W%<"@LFB*TTKS$1A6VV] W[JEM*["U4$X'F#OW2"Y,]5.<8YFN+PUT0A]4
M<A&2K"UQR"6$VB@"8I&1<5?0F":-/!XF:]R#U%8(&U 5'0#K8DSDL\5)G,XW
MRGFVF-?6F,0,?;6:DI;.G>@SO^#KY1*2D@F='!!GQ*ERGN27$V2>9)8RD</0
MY-[F_B2/>Q3:"I!'4F$'8'V]_HC+V\'9!3?HDZTS=@!%#94]#^1'6 O1"VLM
M-[5!70M /DS6N">;K4 WH"HZ -;]C/!BHK:;)H>\%@)D1]*JW?VS="(PS4H;
M3!T&IV8'DHTWU0,5T.]AXHLP7?Y[F)UBJ!T-E]//FTN&+^<DNM-Z?6*O/-CW
M'SI0/FQ'Z@?*BUV^]=N1S3>P>:ZC5+6YI'".8.'(S=()(26A41:7A&_3MND!
MH@XN1[OCV=\2P39:YVS0($+MKLDXKVVW./A<)#)4'G.;EFD/437RS8VA$'*K
M8&PP3?2;DO_NHM[_]'#;1Q_+/#4\6WP0@B+;8&6N8](V\XD#N=<E2PCD5X>
MG$5UM"7;8,[4Q5O.RX'F5[?O7S#4U^;7\[=8\WP4C3P-J^G-TZV".0J*B"'[
MVAY?2P_.&0["NIA5L4ZTF7<\*!<=&\%=$/C <*HC:[J#B. ;\\_"ZN.+V>*/
MOV'^@*N7\S0[S;48[DI[S$TP1.$W$?L1*=ZNQJ?VK:B##6^(P<9HHO<*N*BG
MQKSZQU(AH'1!.H6&ER9^2R-^1K[.UA[ZXVF_JT5P/L;ZIR_I8YA_P)I?JD)>
M779FV;3G#O,T#;,WB]5FXNT-WGED$;,WX$PF Y!C!"\<@DVFQHT\I-#D*'M(
M)D:^Z78$2W]</7>%\<TZ_N8_KGY=K)_CBJ2QZ8"\JA: ]K8K;N6E4%97I8++
MS9CG>:KUA[>$]>J\@]$-H06NT2<C(2M.0I/&0W H@7-5JARE;3.*N ON1[YP
MUWY5/19D/>)@]8:+>N&4+FXXI0=4G0U-PK&"WT,D<XP@F6F;H_8%,!)*E54"
MG,[5,>+1")>D:3-[YRB9O*=?GX997;'O/B*N?UXN3C^1P,\:B*7,3(ZVGA0G
M<@9K[_0@(@+MD-859LA3;#/V=@OB.@YI=\'+O7F]H?32@0-SA:?++_\VQ241
M]?'KJSH]:=/750@EC/("@A*ZGLAI\%BO"\:,T:5H>&[3+F4K\CK!VV"PN!]W
M0^FH)^2=[RG7MYM+_LZ;=5H38^;%0G96U5N!=6:<8E""L.2B2&2N3>.U7:CL
M!H>#P>0^) ZNLYX ^7+^Z72]VDB,7W1P9591"&K N\R)%<L@L!@ C0NN:,-D
M:M-1YWZ:.@';\$BX#W,'JJ53A(ES5HI")>L%0J-9 .44,55*@8@,A11!>]7D
M*MD#-'62GAT%8?NHI5.$R4M6.'IE ]2!OZ"XWK0^XY S2\6$H'6;PX,':.HD
M(SH*PO912T\(>_IUDQ+8%,=O' MGA"HF:XA6B#IW2X+/P0-R@=E8+U-J,X7T
M/HHZL5]'" L.T$1/D+J>8[IY)/S;?!%7N/Q<!;=91_3KQ3Q-9].-3J]*X7S)
MZBR*5K:6D"(#I7T"SV,$8TI!:[AF;<HO6S'4B<MW&-[N0_&8RN]@$?RRF./7
M7\+R=UR_.)WGB]$1R2NMLE<0I:9H340.,4L&VL=H7=(<4Y/NAW>3TPD 1X7*
M8G"]=8"^9XN3$UQN#H3")UQ>N"9"NY)% *)7UV:Y@>12&,B,4D07=6HS_.I.
M:CK9S7O"WN%:ZP!ZO[U[O]Q(\^O3Z6SVKHKSO#)LPXTPLH;X C(&"THE"O$I
ML@<9(L7^1@NEFV1>'B:KD\"E)S .J,<.4/D,E^MIF=+'</6Z/,=/]9S\G!5C
MN&1!%' ^D[O#ZHUSP0WD1&QE9J-G;2:YW4]3)T40/>%Q* UV ,;?WOV\^(S+
M>4U0//F )++:4R:N;RVRXM&C_O_;>],FIY(D7?C[^U_\3NS+E]>,JJ+:F*$
M ^JVS:>T6#P@;1*)EC+I8G[]]5 J5Z1$1SJA$\KN:W-IH!+)ER<\W#U\"1PL
MJMH^+ V$G OPHCC/S!O79JO!K@1./$VX1Y@VT6T'F/UUOO@Z7]#A^V4^RS\P
M@]XK+@R9?Q[JD$]CP1.VP,L@M W*9-=DY,"35$T\1;A'=(ZGQ0X@N:G Z?WY
M\G]6.8RD3-+&)C#('8FJ>' J(QTO(Y*)(=O8Q,]\BJA.O,Q6"<S1]-$5MFZJ
MGC_2OUR?0!^-=5:0Z5;)D)"LJ.]''B*+DF<?N1)-K-U31$V;RAE/]5LQ=: >
M.L#4EG+ZM?&53 6)28 L=?I&++$&5 Y$"MH+GY*2;9[SGJ*J%U0=JOS'2>K1
M--$!K%[-Z+-P>?F>KO4/_PQ?UUS4GN10L@8FZ:RI4C2)QBOP6((1.7$FFER
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
M:V%4SE4*21?N*>ZM'2!.<8AUIF^VY%0&YSPS3:K&QF/A]-\G)SH1XX#BA N
MUPM"?B55X"Q]IS_^,RSRS?-,T]K?';_Z6&6_^TCB&!6_B$Y((P5HKNIXCF3
M<^$A2;3"\&2];#O0I$'%[YT"UJ.PD3GN-8*/(M-)IV#)^61!,:,H<BI!E,8/
M6+U7WPY!P?;'IN'2[N"F?S>_-_E!\("88H%0:L^G9T2[B!JR"!341B[BXQ:P
M<9!RGXA>WHKVT.9\)-%V!(N;99$*/2_1 F;.06F7(7B*,I%%\AFT5S$W29<^
M)&-::.ROSBVXV$.V'2#C]?SV/4K%R'3=:\88EKJ?*H"O(_B,X#P3Z=;')JBX
M(Z$/1.RCR,<C#O>3:@=X^/!YOKBIE,V11R>#)QNI*,K%6B2;5)USQDO27%B5
MFQ0>W*-AVF!M1$3L*]>)9VC<>/@K*ZE0)6=UA(2K:).<JRB4 \*Q8S%Q*\HN
M";&=1FC<_^)>U@3N[T,<),H)(9#6-)^]N+A8TU\WEU\?!Z>-T0XU:"8=J#I=
MS#%48*.47H5<,&VX+Y8W>%AB^C^?YM_^X^8[KC%Q\Z?'F'B*DNDFK.ROT_G(
M NX!)"__?'^F!!V#V@L>0D Z'18A1*+>,5<D\X*5L.$AZ5!0T#=/ X+Q]/<8
M$$.%V0, _O/=?Y_5J=#.<TT.CO9U?+,#S[(%'S#(1)XT,34^ .B;I[DEV@%@
MJ#![ ,!_O?_[&8JL)1E"B-R0&?2KS;EU7YO&C,5F:?T&+^%0 - W3U,KW0X
M0X79 P ^_OVW,RELB4%I$+QNRDZ>:&9<0;(817'TG_R&JIA# 4#?/$W)7SL
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
MCZAC*:F/S-EF;G[Y7F<8KQI$C.#"YDS0T%[6M94<0HJL5K+$Q%$K'YIT.NQ
MV[20:P.*72_//374,^CNC<VVFOEBR-^P.I@Z"]1"-%@ 4Q(LL9 X;U);NP-M
MG=JY??&PL[.VGW(ZP-MK<F1N&H)XL89+#:K(.E&J3G]U.@!W4L10N)5M6M+O
M2.@4/?MJ]W'1]7ZB[@ DMY*X(=]*#)XH3S'4.<0B0E#!TN^LS<X'C[Z)O_F(
MCFF?+%O#Y1"A=X"9.MOEBC[N,1O&9%&<T8!2$1M,.2#G4H 6)!3-9?1M%@-M
MH6?:E\;6&!I#"1U@Z?>KQ>S\\FJ!)*+?S_^JO[N92^B%]1+)<]19U+G -:&+
M7@ 3FCLE!#.LS1R5K21-^W[8&E$CJ:(#4+VN3Z:?YQ?YU9>OB_6KZPTKF&W6
MKM"IL-76,A).\-Z!%RISBH>-5TW"NB=HV@E6^E1A-98R.L#55E&]OFW=D^@,
MMQSK3FZ2E"+W+PIOH629L\[<H&PRWNCGI$WK4DV;--A//STC[F^+^7)Y1N:X
M(*<#DU5*H"0BT/VN0 EME//)F]QD+M'39'4:Z^T)@ETQ-EPC'>#K14I77ZXN
M:BW8;TA$I//K&=3X]0+7$T=??)DO+L__=_7W6YD_<ZBX\Z6 RG700W0:@E"!
M#+M-)1110AN[-Q8#G0:<XV!V$BU/7YM87_JVB_8-7K[\*UU<95S^.E_-F$R5
M^5>5_4^D_^59$+G^GX:"M70EICI.+Q;(QA7%$X7H\E$ \N,CYH$T=!K#'@;+
M8^IE?QL[OPP7(Z5+-G%Q?5U8I=#Q2)9-2 O*Y=H?+3)8.E;6&%58:G*!/T%3
MIT'N.)9P+%UT<'4_=8#.E(E"LFR!F<A!!2_!>1?!<<X\9O1*FZ,ZAF]PMROV
M^&%N8[=PJ#9&,UBCE_E\N)RG_ZF!/$&XLG?Y/<SRZB]_H0@_UX0DSI:K+]JG
MW&?(QX]4]K,W1R.5_UQ_YUVE!N/(LA2 QM.]%FQ=Q&(8<&.L#3)*IYI<!@_)
M.+BPYP>AOIE?XJ:*79U$TL4R<-K0>2N18J5,IZ1@RJ9PP6.;E=H[4SAM('L
M.GZHXVFBDWXK$@<<[/V+JH=_R?'-5L.2ZT?P++;(Y+6'C*+.'A>Q3LX(4*0H
MAOY;3&W*I48V7K=IR@^?Z9#^(,_W2-]SGB@\7<G[S]GYY?)%[<IZ02[EMQ^'
MBA2!214;P.I$AU:$NG97&2C<I<P=\P:;/(F.S$=7AG (TK87-!Y?OQW$##]C
M?\7TVZ^KK5];.':J"*,#^;(J52>9<_#)4BQ.(7@4QC$KF_02'$[ZM"F^(X)X
M9"V> &Y?TGT]_XZXXOS=U2)]II^HH=@6]E7(.1L4X+VVM:TC@D=%OT-C9>#)
M*M^DO7%D/J;-#AX1T2WUVQ6\;QG%Q;?SA)NE\>+B8KU]\6UYCVG^:7;^OYC?
MK=JKZT+CY9T@A+(NVN A<H- Q]R B^@@!)^<L:X8F=L"?62.ILU.-H'\E#KO
M"OQ_UH'(:\[N\U[Y>S.??2/?#//*&UL^.N\4 PN?M0:.=5FNJL.T2M!  ;.E
M(Q\<\M 6YGO3/FU6M F@CZ/'9Y%]>)'S>?W?</%J5C]J_2Z[=\_D6%]]_$S%
M[I)HE'RU4BF5R0_FOJRWL4ON@9'5C(H79AT[_?S%BSKWY=-U#=XOW^]^9CU]
M:'4HUYL[5$ 3A("8DJ>C*)!,@6&0@RQ:L3J^H;%)/9"#KG(60] UU#ENH],.
M/(/JX+\)7ZZ;NY1@F25>P$E>ZT^T!.=LJ:WRP6E5'+8)V>X3T4O?Y5%Q\/BA
M<U^E= 2H=56S\Q)9B0F$2D1]3>/YNIN^9.MU2MFEW*;#]P$9$U=+[JW.+;C8
M0[83(F-5BG1MJU_-$LGK_-LJK["N3]<EU&UI&B*YO[6&DP0BHP6;.9H8DN"2
M_\PE>_HK^M#^/DJ;CR[!#BS$M9&\:2@NB25=!X#ZY".H0,;2L6  "TL4$(F8
M?9,'^0=4]%*W/^6EL[]:.L#4_H*[8WN6'QU50:(+V60PJ984L5#;W(4'$<BM
M#$K4R8U-W/,&S$QK P_ UF-'?6I%3WV1OL/%*G2G>V#30^KZ2E!(UP &"]S8
M!,J+6KZ[6K3!A$T^L9SM3I?J3E\WL<\^.23F3?73@WDE;:Y$^>M%6"[IGJK\
M7*]XIB/,@C*@K1)TEJ.#4)P!8P0+@G%G19M7OFT43?M>U\=5/HZZ.L#=??K7
M!S/Q)**W!ES!4!L3Z'>::W#"%FVYSM(TR2'^2,K$5F\<'3^NW3],X#U 9O[E
MR[H\8VUKA9?!!\\ISEH-@!2% B422G(Z)B90T"EKT__QB))I 7.H:G^<C7&
MG#L RD\-]#;[_/JVF<%DB9P8!>263EK=!A^=C:!=C+%D++S-!._#29_VB;^3
M6_*X .@!\O6TOL>O-\4]M34K?'EQ=?EYOJ@/R2^^S*]FE_PL1:=#U@J8"JZN
M*C 0<_2 24F#I@B?FDS(VY&^SL.-D6&SJ<U@9!UV ,V/B]4"[^\K]E;R6[Y(
M_[@Z7]2509P54PJ'H#V)R^@,%((Y$*(4IK-%.N<MX/@$31,G#*>%X%BZFKY[
M?2-'USOFUPS5>IH_D Y7/M.:8G/,$5BHO:M!6_!&T+$JVA>2F9>Q/0RW$#=Q
MU-L1'L?07C_ W&SMWV-UW\]GG^[,_MW/W%P VGGN,7+0=>JABB1,5RO.M/$Z
M)Y?);RK'N\1W(7EBI[3'>WUT37=PU>\MZ)L7T#I=8!4;O+W\C(N/G\-LW8CQ
MM[IP:_EJ=EVR>U;3J$;:#$%D PI3 D^1**1DM544Z0K=9+CAL1B<MJQUZO/2
M(XJ>1;WLAF>+FQ:0XU3-[D# \6MGATJE304MXX7B-^6!2<WJD$@&0;($DDG/
M530\M>EU[;6"5NH@?7(>?"JYCJ//X'0JH+6203J4$IOXY,^S@G8(NMI5T [1
M:0?NS(/J/FFEY=;5M7BF@-+<0T!%$A1:..*J]LS]NX*V 0Z>JJ =HI2. +5^
MI,F%AZ1LG=];GU6R0W"\SB1Q!I$YSG*CQ7(=U0_MK\ZG*VB'R';JPI_M]9\R
M.VUCB75HN*7X+U>!. ,80PS62"FC_IE[=D(5M(.4MEL%[1 )=F A'I;3<6%=
M],9!G70&BL<$46$!8Y2VC!G)69-7R&=907O(I;._6CK 5),J.@KC,^H2"#JQ
M'E7.(6I1(/G@A \BJ#Q-!N;$*V@'8>L8%;1#%-T!V#=59K[_\.?Z-LC%,Y6U
MA<"B(P>C( 21,CD8*C(IG32I25#Y)%6=/WHW!\V\E08[@.,8J=08?/(" 87C
M=2\:@H^>@]6%>::CDMCFM><XI4@G4+![B.=P9 "<,N1_FKZ_G7[Q?GYQ\?M\
M4?_1&7-*<<TMR%($*.MEK1B+9&JB%*A$R*Y-I_U1V>S\CA@9Q$=[$#H84?\:
MY^W-U>KN+9A]$10\\]K6JM %"&0#P6=F@@F8*7H_T:-VS>&)GK(CP/SX)W(/
MS.U]&+^NWH,_7(;%9>='\M$+=F+D##-7GZQK0PC/!H)7A4PKN<%2$&5M6F:Z
MJH/HKQCS.1W( Q#WK"_'_[O2WYU<5#3!^01&9R0[A9:4IRR(F%B,3'L?VHRJ
M/A*#)UJ&^IQ.X@&(.[3LM?.S2'HK>'Y?.,P%XQ@+$+77=8JG@F"X!&MU\LJB
MB^[$"@1_X/%$:VJ?TXD\#'?/_% ^]N2SB)([,E4E6@<JD50<>H0HF2R*&2RE
MKY;*)M%C?T6[S^E 'H*Y Z/'E[.3.9!_Q_-/G^L0X6^X")]PY>'_1A;E]W"^
M6#79W%>T<H$7+ R<"M6B,0TQ& 4I1Q=\T=KP4TWZ#)'#B4:B)Y. ;8;)9QV$
M[BZ^LT0:CX(4+K@)H"0)SD>*&;*+RC"/.J53O7Y_RORSS^NV.ST=6H)!4/Z7
MRPG_7'Q>9XU1.4 9,R@6/44K%*AP:>E:",$9UU=!P=@2.-&[_%_*'+0$];-V
M"1YF"7\N..2<6Y\0M!<>5$X5""S6=DB50\Y"\I-.7(]C#4XYL_T,K$%+4#]K
M:[#.4%X1JG\N-1Y$*<@8Y%1[)9BI^X.<A,31QR(,5Z=62C6$_6>?3W\&=J 9
MG)^U$1@06B$:+KVO*W@YA5;>)8@F*PA87) J\.A/S 2,G"4XY?S],S  C: \
M:NY_R@D?]Y87'W>RQQ-??/R)'KM*H<TD#Y$DUU9)0$Z_*&0%R O-8 H+/@<G
MDFKR8M+K) ^66#4D#+S-M1F(&? 2-03/&3.,)6^;3&E^GI,\AJ"KW22/(3KM
MP+=Z,&5 &">991XPYP0JTL7@273 .484D6)#T23C\1PG>0S"P5.3/(8HI2-
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
M[9@M+%  RL7/8I_=OZ[SPL]C@:R1?KI8S[ZI1T<;9%KD" :)$V4S)QFQNMB
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
M:*\T\YYKW"EALY/>'WSSQ)K?1V_S,80XM?;#7_<(9]8+HDV KH^F2N4"'D,
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
MS&G+6"9'X6%JZSY2>-J'.#QDV.WSQXT=]N#IR$&$2MQGKR6%F-*#LA;!)R_
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
MN& 9803#$,VU;ZA>_X?Z2PQ+_/__O_\'4$L#!!0    ( (>&I%(7%E);<0@
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
MAD5?H$4R5G+,L4HG]#;_L43GZ9O'J513#JV3D?(YFZZ '$#Y73C'8_7Y:4
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
M:61/)%B?*,3M\Y'V4_KM5[.[@W,)*V0]2Q?!?^=Q_4IGI%5VUYY^L,A>';6
M;MR3/%QW!_BX[MZO1;DG0.L8;&FOD=FC:D$W0!P=J$O<"2J9C\>?'>&=#!C\
M+Q*@FX"5.RA[LO57]=59[ @+ Q?NX7TO%CPB5XNT=.NW*M]A)*_O_'DB!+$1
MCM-MR_+N\A"RJ/#FV6W#Q:JIN6SXPN3\[))CIOPMSX[_D\.$;UQ[7*X9-ZSU
M91,Z@H63V\TFG[DI63S]O4UW@_3BOU!+ P04    " "'AJ12-G)]06D%  #@
M&@  $P   &9O<FUQ,3(Q97AH,S(P,2YH=&WM6>MSVC@0_WY_A4KF^IC!3UZ)
MH9EQP9DPDT *SK7]="-L&6LJ+%<6(=Q??RL9T@"EI3=])+WF@P=YM>M]_G85
M=9[TAMWPW56 4CECZ.KZU46_BRJ&9;VI=2VK%_;0>7AY@>JF[:!0X*R@DO(,
M,\L*!A542:7,/<M:+!;FHF9R,;7"D:5$U2W&>4',6,:5TXYZ T^"X],_.D\,
M _5X-)^13*)($"Q)C.8%S:;H34R*]\@P5KNZ/%\*.DTE<FW706^X>$]O<$F7
M5#)RNI;3L<IUQ](?Z4QXO#SMQ/0&T?AEA2:VVZ@UDD;LD)-ZW9W@)B8G#;<6
M)[66DY#&WPXH:<'VDJ>02T9>5F8T,U*BON_57;/5R&5[06.9>HYM_UG16T\[
M"<\D?$\ ?_FS%+,C3));:6!&IYFG3:J4K&MRQ!D7WI&M_]J*8B1X1MG2>Q;2
M&2G0@"S0B,]P]JQ:0!B,@@B:E!L+^@\!G4 ]O5R4*K= #J,969O@N$KIX#:E
M$RI1S86(;JK\964_8><W9(H@CD3\)+]T@U'8/^MW_; _'*#AV<-7^+P?G*'@
M;="]#OM_!: R:!^,D#_HH9)VUA_X@V[?OUC3'KQ-5]>C\;4_"%$X1,XQNC;'
M9M=$XZ"K@O+TR&G:;:?6L*L/WA!_C/S>\"H,>NB^31N6G-A-" P*SP,T]D>O
M_$$P-H9O+X)WR.^&BN+:MKMCZ>=JZGO;6O^DK?T,13S+2*0: UI0F2*9$O1Z
MC@4$@"W1B.1<2 3$,RYFJS#:QFO$$_WF#$>2BVI)Z&>16448]0C#"RP(R!;
MCI7P*DJXT,)S4)7'B&0QM(Y++**TY'9;5=TJ0$*!$LJ >J?0F$1S =T++,=9
MC(+;*,79E$"3F<UH46CY!$>I4DOMGX-P44 J@1">)#2"U5Z5$5 E393P?"Z*
M.88X2'X_B4O_W$MBI2*.>:ZZWWV>C9TJ25;ZC+&8X(P4QO"6D27R(ZDH*DFJ
M0,>RJIA36B!!BES)N"'H?<87X(0I>7K4.&X_D(0I+=M;PSF.8Y@%#$82Z=6:
M(%)7-85P9-(SG./\^_?.3RONF&NE?_S7VQMN<6RSH=P00EY\N"LT419:,F>P
MB/@L9RH?[PI D ]S*H@:EW0B;Z7D<_RB_ DUYC2>Q^M5LET]=Y6S2D'GI%8O
MLWFF"Q)R[:2M:NSP$!\T*CS<Q' ?9&+0#.!RII%3(;3$5$$9S70\=[,&4[7*
M 3U4@E351LP8 @&@%F9K6"FJFC^A&<XB]1Y$Q_I0H&$5=LU9F5\<4%I__3.P
MN0GHQ?KSH">\%81FYE=UP+O)'8LI#.\3+B6?>7>ILC492#QA9,TRX0+PWH"@
M,9P7Q%O_:,>TR!E>>C33KM=,[1L%]Q%F*Y&2YZNCP3&<E)IU=3J0H)^,U^)7
M!P=3'QPL&>_26J;=JNVEVJ:SE_8YJ6[3;+G-;RZVZ9HG]G[6^V(M[8C2&>#4
M(L?9RTJMLE75GIO?(F<S4"JCMSU=AO3'U[D^\?6@%C8[Z<KX1V[7)5ZB>CDY
M_6*6/3VJM]J%?J++?O?<#RY0#Z:QBV \'HXVC#TP3VUE<^4@!QVP=84Z@!\>
M[$4%9S1&:[?\5T?O!4+G9W3(,L,HS R$@>]+\!\S4A1<' C@WU5O+=&C$IP8
M'6!)-Z4D@1D(YB$]8@_+H\$CM.3YE:#0PG/HX3OFZ%[>@VE1->P76__:^HWJ
MC\*N_P>JC\_]OGJ<^[_A_(<%8)QBBN"1XL<(?"6$G]V=8'X)"-\Q1T/X1[H?
M17R>277+LMJP%]8M?<;YRB/7UD5)SLN;(D\0AE5GV;DZ^5@SVJWV1Q8\@<*9
MRUV6+]RVK)[EW8^^A3K]%U!+ 0(4 Q0    ( (>&I%*AF2NE.OH! .SW&@ 1
M              "  0    !F;W)M+3(P,C$P,S(W+FAT;5!+ 0(4 Q0    (
M (>&I%*A'*0-%P\  +^G   1              "  6GZ 0!F;W)M+3(P,C$P
M,S(W+GAS9%!+ 0(4 Q0    ( (>&I%)J^_[8#2@  *BY 0 5
M  "  :\) @!F;W)M+3(P,C$P,S(W7V-A;"YX;6Q02P$"% ,4    " "'AJ12
M ]R"]H!@  !.8@0 %0              @ 'O,0( 9F]R;2TR,#(Q,#,R-U]D
M968N>&UL4$L! A0#%     @ AX:D4ARMG_%-Z@  J\4) !4
M ( !HI(" &9O<FTM,C R,3 S,C=?;&%B+GAM;%!+ 0(4 Q0    ( (>&I%(?
M?FD<=)$  #?4!@ 5              "  2)] P!F;W)M+3(P,C$P,S(W7W!R
M92YX;6Q02P$"% ,4    " "'AJ12%Q926W$(  "9*P  $P
M@ ')#@0 9F]R;7$Q,C%E>&@S,3 Q+FAT;5!+ 0(4 Q0    ( (>&I%+.>I]H
M90@  )PJ   3              "  6L7! !F;W)M<3$R,65X:#,Q,#(N:'1M
M4$L! A0#%     @ AX:D4C9R?4%I!0  X!H  !,              ( ! 2 $
J &9O<FUQ,3(Q97AH,S(P,2YH=&U02P4&      D "0!- @  FR4$

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