XML 45 R44.htm IDEA: XBRL DOCUMENT v2.4.1.9
Schedule of Fair Value of Financial Assets and Liabilities Measured on Recurring Basis (Detail) (USD $)
In Thousands, unless otherwise specified
Apr. 05, 2015
Dec. 31, 2014
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities $ 1,051,941us-gaap_AvailableForSaleSecurities $ 1,004,576us-gaap_AvailableForSaleSecurities
U.S. Treasury Securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 427,119us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_USTreasurySecuritiesMember
402,154us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_USTreasurySecuritiesMember
U.S. Government Agency Securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 232,187us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
258,502us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
Corporate Debt Securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 160,877us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CorporateDebtSecuritiesMember
141,467us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CorporateDebtSecuritiesMember
Commercial Paper    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 130,298us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CommercialPaperMember
140,638us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CommercialPaperMember
Certificates of Deposit and Time Deposits    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 87,052us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CertificatesOfDepositMember
49,036us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CertificatesOfDepositMember
Equity And Debt Mutual Funds    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 13,962us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= ter_EquityAndDebtMutualFundsMember
12,333us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= ter_EquityAndDebtMutualFundsMember
Non-U.S. Government Securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 446us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_ForeignCorporateDebtSecuritiesMember
446us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_ForeignCorporateDebtSecuritiesMember
Fair Value, Measurements, Recurring    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Total including derivatives 1,270,886us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
1,298,832us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Available for sale securities 1,270,886us-gaap_AvailableForSaleSecurities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Contingent consideration 3,350us-gaap_BusinessCombinationContingentConsiderationLiability
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
3,350us-gaap_BusinessCombinationContingentConsiderationLiability
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Derivatives 19us-gaap_DerivativeLiabilities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
149us-gaap_DerivativeLiabilities
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total 3,369us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
3,499us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Fair Value, Measurements, Recurring | Cash    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Cash and cash equivalents 115,982us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CashMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
111,471us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CashMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Fair Value, Measurements, Recurring | Cash Equivalents    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Cash and cash equivalents 102,963us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CashEquivalentsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
182,785us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CashEquivalentsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Fair Value, Measurements, Recurring | U.S. Treasury Securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 427,119us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_USTreasurySecuritiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
402,154us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_USTreasurySecuritiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Fair Value, Measurements, Recurring | U.S. Government Agency Securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 232,187us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
258,502us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Fair Value, Measurements, Recurring | Corporate Debt Securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 160,877us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
141,467us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Fair Value, Measurements, Recurring | Commercial Paper    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 130,298us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CommercialPaperMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
140,638us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CommercialPaperMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Fair Value, Measurements, Recurring | Certificates of Deposit and Time Deposits    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 87,052us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CertificatesOfDepositMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
49,036us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CertificatesOfDepositMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Fair Value, Measurements, Recurring | Equity And Debt Mutual Funds    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 13,962us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= ter_EquityAndDebtMutualFundsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
12,333us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= ter_EquityAndDebtMutualFundsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Fair Value, Measurements, Recurring | Non-U.S. Government Securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 446us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_ForeignCorporateDebtSecuritiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
446us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_ForeignCorporateDebtSecuritiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Quoted Prices in Active Markets for Identical Instruments (Level 1) | Fair Value, Measurements, Recurring    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Total including derivatives 230,738us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
284,022us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Available for sale securities 230,738us-gaap_AvailableForSaleSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Quoted Prices in Active Markets for Identical Instruments (Level 1) | Fair Value, Measurements, Recurring | Cash    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Cash and cash equivalents 115,982us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CashMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
111,471us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CashMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Quoted Prices in Active Markets for Identical Instruments (Level 1) | Fair Value, Measurements, Recurring | Cash Equivalents    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Cash and cash equivalents 100,794us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CashEquivalentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
160,218us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CashEquivalentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Quoted Prices in Active Markets for Identical Instruments (Level 1) | Fair Value, Measurements, Recurring | Equity And Debt Mutual Funds    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 13,962us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= ter_EquityAndDebtMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
12,333us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= ter_EquityAndDebtMutualFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Significant Other Observable Inputs (Level 2) | Fair Value, Measurements, Recurring    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Total including derivatives 1,040,148us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
1,014,810us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Available for sale securities 1,040,148us-gaap_AvailableForSaleSecurities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
 
Derivatives 19us-gaap_DerivativeLiabilities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
149us-gaap_DerivativeLiabilities
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total 19us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
149us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Significant Other Observable Inputs (Level 2) | Fair Value, Measurements, Recurring | Cash Equivalents    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Cash and cash equivalents 2,169us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CashEquivalentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
22,567us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CashEquivalentsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Significant Other Observable Inputs (Level 2) | Fair Value, Measurements, Recurring | U.S. Treasury Securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 427,119us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_USTreasurySecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
402,154us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_USTreasurySecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Significant Other Observable Inputs (Level 2) | Fair Value, Measurements, Recurring | U.S. Government Agency Securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 232,187us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
258,502us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Significant Other Observable Inputs (Level 2) | Fair Value, Measurements, Recurring | Corporate Debt Securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 160,877us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
141,467us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Significant Other Observable Inputs (Level 2) | Fair Value, Measurements, Recurring | Commercial Paper    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 130,298us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CommercialPaperMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
140,638us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CommercialPaperMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Significant Other Observable Inputs (Level 2) | Fair Value, Measurements, Recurring | Certificates of Deposit and Time Deposits    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 87,052us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CertificatesOfDepositMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
49,036us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_CertificatesOfDepositMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Significant Other Observable Inputs (Level 2) | Fair Value, Measurements, Recurring | Non-U.S. Government Securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Available for sale securities 446us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_ForeignCorporateDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
446us-gaap_AvailableForSaleSecurities
/ us-gaap_EligibleItemOrGroupForFairValueOptionAxis
= us-gaap_ForeignCorporateDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Significant Unobservable Inputs (Level 3) | Fair Value, Measurements, Recurring    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis    
Contingent consideration 3,350us-gaap_BusinessCombinationContingentConsiderationLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
3,350us-gaap_BusinessCombinationContingentConsiderationLiability
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total $ 3,350us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
$ 3,350us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember