XML 88 R85.htm IDEA: XBRL DOCUMENT v2.4.1.9
Valuation and Qualifying Accounts (Detail) (USD $)
In Thousands, unless otherwise specified
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Allowance for Doubtful Accounts      
Valuation And Qualifying Accounts Disclosure [Line Items]      
Balance at beginning of year $ 1,807us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
$ 2,474us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
$ 1,937us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
Charged to Costs and Expenses 2,043us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
1,723us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
529us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
Charged to Other Accounts (105)us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
(8)us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
4us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
Inventory write off (898)us-gaap_ValuationAllowancesAndReservesDeductions
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
(2,382)us-gaap_ValuationAllowancesAndReservesDeductions
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
4us-gaap_ValuationAllowancesAndReservesDeductions
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
Balance at end of year 2,847us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
1,807us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
2,474us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
Valuation Allowance of Deferred Tax Assets      
Valuation And Qualifying Accounts Disclosure [Line Items]      
Balance at beginning of year 2,199us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
  3,702us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
Charged to Other Accounts 16,674us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
  (1,503)us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
Inventory write off (836)us-gaap_ValuationAllowancesAndReservesDeductions
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
   
Balance at end of year 18,037us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
  2,199us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
Inventory Valuation Reserve      
Valuation And Qualifying Accounts Disclosure [Line Items]      
Balance at beginning of year 2,933us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_InventoryValuationReserveMember
2,185us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_InventoryValuationReserveMember
1,127us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_InventoryValuationReserveMember
Charged to Costs and Expenses 2,204us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_InventoryValuationReserveMember
779us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_InventoryValuationReserveMember
1,307us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_InventoryValuationReserveMember
Charged to Other Accounts (181)us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_InventoryValuationReserveMember
(25)us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_InventoryValuationReserveMember
(34)us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_InventoryValuationReserveMember
Inventory write off (154)us-gaap_ValuationAllowancesAndReservesDeductions
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_InventoryValuationReserveMember
(6)us-gaap_ValuationAllowancesAndReservesDeductions
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_InventoryValuationReserveMember
(215)us-gaap_ValuationAllowancesAndReservesDeductions
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_InventoryValuationReserveMember
Balance at end of year $ 4,802us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_InventoryValuationReserveMember
$ 2,933us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_InventoryValuationReserveMember
$ 2,185us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_InventoryValuationReserveMember