XML 22 R55.htm IDEA: XBRL DOCUMENT v2.4.1.9
Restructuring Charges - Restructuring Actions (Details) (USD $)
In Thousands, unless otherwise specified
3 Months Ended 12 Months Ended
Dec. 27, 2014
Sep. 27, 2014
Jun. 28, 2014
Mar. 29, 2014
Dec. 28, 2013
Sep. 28, 2013
Jun. 29, 2013
Mar. 30, 2013
Dec. 27, 2014
Dec. 28, 2013
Dec. 29, 2012
Dec. 31, 2011
Restructuring Reserve [Roll Forward]                        
Restructuring charges, net $ 584us-gaap_RestructuringCharges $ 28us-gaap_RestructuringCharges $ 59us-gaap_RestructuringCharges $ 1,997us-gaap_RestructuringCharges $ 443us-gaap_RestructuringCharges $ 143us-gaap_RestructuringCharges $ 92us-gaap_RestructuringCharges [1] $ 3,980us-gaap_RestructuringCharges $ 2,668us-gaap_RestructuringCharges $ 4,658us-gaap_RestructuringCharges $ 2,917us-gaap_RestructuringCharges  
Asset impairments (390)us-gaap_AssetImpairmentCharges (86)us-gaap_AssetImpairmentCharges 0us-gaap_AssetImpairmentCharges (743)us-gaap_AssetImpairmentCharges (567)us-gaap_AssetImpairmentCharges (15)us-gaap_AssetImpairmentCharges (121)us-gaap_AssetImpairmentCharges [1] (58)us-gaap_AssetImpairmentCharges (1,219)us-gaap_AssetImpairmentCharges (761)us-gaap_AssetImpairmentCharges (421)us-gaap_AssetImpairmentCharges  
2010 Restructuring Plan                        
Restructuring Reserve [Roll Forward]                        
Restructuring Reserve                       200us-gaap_RestructuringReserve
/ us-gaap_RestructuringPlanAxis
= form_A2010RestructuringPlanMember
Restructuring Reserve                       200us-gaap_RestructuringReserve
/ us-gaap_RestructuringPlanAxis
= form_A2010RestructuringPlanMember
2011 Restructuring Plan                        
Restructuring Reserve [Roll Forward]                        
Restructuring charges, net                     2,917us-gaap_RestructuringCharges
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
Adjustments to restructuring charges                     31us-gaap_RestructuringReserveAccrualAdjustment
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
Cash payments                     (2,070)us-gaap_PaymentsForRestructuring
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
Non-cash settlements                     (462)us-gaap_RestructuringReserveSettledWithoutCash1
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
Restructuring Reserve                     616us-gaap_RestructuringReserve
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
2012 Restructuring Plan                        
Restructuring Reserve [Roll Forward]                        
Restructuring charges, net                   4,841us-gaap_RestructuringCharges
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Asset impairments                   (2,743)us-gaap_AssetImpairmentCharges
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Adjustments to restructuring charges                   (183)us-gaap_RestructuringReserveAccrualAdjustment
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Cash payments                   (2,369)us-gaap_PaymentsForRestructuring
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Non-cash settlements                   (24)us-gaap_RestructuringReserveSettledWithoutCash1
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Restructuring Reserve         138us-gaap_RestructuringReserve
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
        138us-gaap_RestructuringReserve
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
2013 Restructuring Plan                        
Restructuring Reserve [Roll Forward]                        
Restructuring charges, net                 2,668us-gaap_RestructuringCharges
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
Asset impairments                 (600)us-gaap_AssetImpairmentCharges
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
Cash payments                 (1,620)us-gaap_PaymentsForRestructuring
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
Non-cash settlements                 (2)us-gaap_RestructuringReserveSettledWithoutCash1
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
Restructuring Reserve 584us-gaap_RestructuringReserve
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
              584us-gaap_RestructuringReserve
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
Employee Severance and Benefits | 2010 Restructuring Plan                        
Restructuring Reserve [Roll Forward]                        
Restructuring Reserve                       200us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2010RestructuringPlanMember
Restructuring Reserve                       200us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2010RestructuringPlanMember
Employee Severance and Benefits | 2011 Restructuring Plan                        
Restructuring Reserve [Roll Forward]                        
Restructuring charges, net                     2,261us-gaap_RestructuringCharges
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
Adjustments to restructuring charges                     0us-gaap_RestructuringReserveAccrualAdjustment
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
Cash payments                     (1,913)us-gaap_PaymentsForRestructuring
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
Non-cash settlements                     0us-gaap_RestructuringReserveSettledWithoutCash1
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
Restructuring Reserve                     548us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
Employee Severance and Benefits | 2012 Restructuring Plan                        
Restructuring Reserve [Roll Forward]                        
Restructuring charges, net                   2,083us-gaap_RestructuringCharges
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Asset impairments                   0us-gaap_AssetImpairmentCharges
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Adjustments to restructuring charges                   (178)us-gaap_RestructuringReserveAccrualAdjustment
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Cash payments                   (2,320)us-gaap_PaymentsForRestructuring
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Non-cash settlements                   5us-gaap_RestructuringReserveSettledWithoutCash1
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Restructuring Reserve         138us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
        138us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Employee Severance and Benefits | 2013 Restructuring Plan                        
Restructuring Reserve [Roll Forward]                        
Restructuring charges, net                 2,068us-gaap_RestructuringCharges
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
Asset impairments                 0us-gaap_AssetImpairmentCharges
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
Cash payments                 (1,620)us-gaap_PaymentsForRestructuring
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
Non-cash settlements                 (2)us-gaap_RestructuringReserveSettledWithoutCash1
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
Restructuring Reserve 584us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
              584us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_EmployeeSeveranceMember
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
Property and Equipment Impairment | 2010 Restructuring Plan                        
Restructuring Reserve [Roll Forward]                        
Restructuring Reserve                       0us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2010RestructuringPlanMember
Restructuring Reserve                       0us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2010RestructuringPlanMember
Property and Equipment Impairment | 2011 Restructuring Plan                        
Restructuring Reserve [Roll Forward]                        
Restructuring charges, net                     462us-gaap_RestructuringCharges
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
Adjustments to restructuring charges                     0us-gaap_RestructuringReserveAccrualAdjustment
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
Cash payments                     0us-gaap_PaymentsForRestructuring
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
Non-cash settlements                     (462)us-gaap_RestructuringReserveSettledWithoutCash1
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
Restructuring Reserve                     0us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
Property and Equipment Impairment | 2012 Restructuring Plan                        
Restructuring Reserve [Roll Forward]                        
Restructuring charges, net                   2,743us-gaap_RestructuringCharges
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Asset impairments                   (2,743)us-gaap_AssetImpairmentCharges
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Adjustments to restructuring charges                   (5)us-gaap_RestructuringReserveAccrualAdjustment
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Cash payments                   (32)us-gaap_PaymentsForRestructuring
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Non-cash settlements                   37us-gaap_RestructuringReserveSettledWithoutCash1
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Restructuring Reserve         0us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
        0us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Property and Equipment Impairment | 2013 Restructuring Plan                        
Restructuring Reserve [Roll Forward]                        
Restructuring charges, net                 600us-gaap_RestructuringCharges
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
Asset impairments                 (600)us-gaap_AssetImpairmentCharges
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
Cash payments                 0us-gaap_PaymentsForRestructuring
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
Non-cash settlements                 0us-gaap_RestructuringReserveSettledWithoutCash1
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
Restructuring Reserve 0us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
              0us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= form_PropertyAndEquipmentImpairmentMember
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
Contract Termination and Other Costs | 2010 Restructuring Plan                        
Restructuring Reserve [Roll Forward]                        
Restructuring Reserve                       0us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2010RestructuringPlanMember
Restructuring Reserve                       0us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2010RestructuringPlanMember
Contract Termination and Other Costs | 2011 Restructuring Plan                        
Restructuring Reserve [Roll Forward]                        
Restructuring charges, net                     194us-gaap_RestructuringCharges
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
Adjustments to restructuring charges                     31us-gaap_RestructuringReserveAccrualAdjustment
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
Cash payments                     (157)us-gaap_PaymentsForRestructuring
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
Non-cash settlements                     0us-gaap_RestructuringReserveSettledWithoutCash1
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
Restructuring Reserve                     68us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2011RestructuringPlanMember
 
Contract Termination and Other Costs | 2012 Restructuring Plan                        
Restructuring Reserve [Roll Forward]                        
Restructuring charges, net                   15us-gaap_RestructuringCharges
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Asset impairments                   0us-gaap_AssetImpairmentCharges
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Adjustments to restructuring charges                   0us-gaap_RestructuringReserveAccrualAdjustment
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Cash payments                   (17)us-gaap_PaymentsForRestructuring
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Non-cash settlements                   (66)us-gaap_RestructuringReserveSettledWithoutCash1
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Restructuring Reserve         0us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
        0us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2012RestructuringPlanMember
   
Contract Termination and Other Costs | 2013 Restructuring Plan                        
Restructuring Reserve [Roll Forward]                        
Restructuring charges, net                 0us-gaap_RestructuringCharges
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
Asset impairments                 0us-gaap_AssetImpairmentCharges
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
Cash payments                 0us-gaap_PaymentsForRestructuring
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
Non-cash settlements                 0us-gaap_RestructuringReserveSettledWithoutCash1
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
Restructuring Reserve $ 0us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
              $ 0us-gaap_RestructuringReserve
/ us-gaap_RestructuringCostAndReserveAxis
= us-gaap_ContractTerminationMember
/ us-gaap_RestructuringPlanAxis
= form_A2013RestructuringPlanMember
     
[1] In the second quarter of fiscal 2013, we recorded a $0.3 million loss on the sale of our subsidiary, TMMC. See Note 7, Fair Value, to the Notes to Consolidated Financial Statements for further details relating to the terms of the sale.