XML 35 R30.htm IDEA: XBRL DOCUMENT
v2.4.1.9

Cash and Available-for-Sale Securities' Adjusted Cost, Gross Unrealized Gains, Gross Unrealized Losses and Fair Value Recorded as Cash and Cash Equivalents or Short-Term or Long-Term Marketable Securities (Detail) (USD $) In Millions, unless otherwise specified | Mar. 28, 2015 | Sep. 27, 2014 | Mar. 29, 2014 | Sep. 28, 2013
--- | --- | --- | --- | ---
Schedule of Available-for-sale Securities [Line Items] |  |  |  |  |  |
Adjusted Cost | $ 193,400 us-gaap_AvailableForSaleSecuritiesAmortizedCost |  | $ 155,332 us-gaap_AvailableForSaleSecuritiesAmortizedCost |  |  |
Unrealized Gains | 749 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax |  | 418 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax |  |  |
Unrealized Losses | (610)us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax |  | (511)us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax |  |  |
Fair Value | 193,539 us-gaap_AvailableForSaleSecurities |  | 155,239 us-gaap_AvailableForSaleSecurities |  |  |
Cash and cash equivalents | 14,489 us-gaap_CashAndCashEquivalentsAtCarryingValue |  | 13,844 us-gaap_CashAndCashEquivalentsAtCarryingValue |  | 18,949 us-gaap_CashAndCashEquivalentsAtCarryingValue | 14,259 us-gaap_CashAndCashEquivalentsAtCarryingValue
Short-term marketable securities | 18,607 us-gaap_AvailableForSaleSecuritiesCurrent |  | 11,233 us-gaap_AvailableForSaleSecuritiesCurrent |  |  |
Long-term marketable securities | 160,443 us-gaap_AvailableForSaleSecuritiesNoncurrent |  | 130,162 us-gaap_AvailableForSaleSecuritiesNoncurrent |  |  |
Cash |  |  |  |  |  |
Schedule of Available-for-sale Securities [Line Items] |  |  |  |  |  |
Adjusted Cost | 9,879 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_InvestmentTypeAxis = us-gaap_CashMember |  | 10,232 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_InvestmentTypeAxis = us-gaap_CashMember |  |  |
Unrealized Gains | 0 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_InvestmentTypeAxis = us-gaap_CashMember |  | 0 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_InvestmentTypeAxis = us-gaap_CashMember |  |  |
Unrealized Losses | 0 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_InvestmentTypeAxis = us-gaap_CashMember |  | 0 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_InvestmentTypeAxis = us-gaap_CashMember |  |  |
Fair Value | 9,879 us-gaap_AvailableForSaleSecurities / us-gaap_InvestmentTypeAxis = us-gaap_CashMember |  | 10,232 us-gaap_AvailableForSaleSecurities / us-gaap_InvestmentTypeAxis = us-gaap_CashMember |  |  |
Cash and cash equivalents | 9,879 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_InvestmentTypeAxis = us-gaap_CashMember |  | 10,232 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_InvestmentTypeAxis = us-gaap_CashMember |  |  |
Short-term marketable securities | 0 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_InvestmentTypeAxis = us-gaap_CashMember |  | 0 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_InvestmentTypeAxis = us-gaap_CashMember |  |  |
Long-term marketable securities | 0 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_InvestmentTypeAxis = us-gaap_CashMember |  | 0 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_InvestmentTypeAxis = us-gaap_CashMember |  |  |
Level 1 |  |  |  |  |  |
Schedule of Available-for-sale Securities [Line Items] |  |  |  |  |  |
Adjusted Cost | 3,841 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member | [1] | 4,077 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member | [1] |  |
Unrealized Gains | 0 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member | [1] | 1 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member | [1] |  |
Unrealized Losses | (126)us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member | [1] | (132)us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member | [1] |  |
Fair Value | 3,715 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member | [1] | 3,946 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member | [1] |  |
Cash and cash equivalents | 1,457 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member | [1] | 1,546 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member | [1] |  |
Short-term marketable securities | 2,258 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member | [1] | 2,400 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member | [1] |  |
Long-term marketable securities | 0 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member | [1] | 0 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member | [1] |  |
Level 1 | Money market funds |  |  |  |  |  |
Schedule of Available-for-sale Securities [Line Items] |  |  |  |  |  |
Adjusted Cost | 1,457 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_MoneyMarketFundsMember | [1] | 1,546 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_MoneyMarketFundsMember | [1] |  |
Unrealized Gains | 0 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_MoneyMarketFundsMember | [1] | 0 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_MoneyMarketFundsMember | [1] |  |
Unrealized Losses | 0 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_MoneyMarketFundsMember | [1] | 0 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_MoneyMarketFundsMember | [1] |  |
Fair Value | 1,457 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_MoneyMarketFundsMember | [1] | 1,546 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_MoneyMarketFundsMember | [1] |  |
Cash and cash equivalents | 1,457 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_MoneyMarketFundsMember | [1] | 1,546 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_MoneyMarketFundsMember | [1] |  |
Short-term marketable securities | 0 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_MoneyMarketFundsMember | [1] | 0 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_MoneyMarketFundsMember | [1] |  |
Long-term marketable securities | 0 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_MoneyMarketFundsMember | [1] | 0 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_MoneyMarketFundsMember | [1] |  |
Level 1 | Mutual funds |  |  |  |  |  |
Schedule of Available-for-sale Securities [Line Items] |  |  |  |  |  |
Adjusted Cost | 2,384 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_EquitySecuritiesMember | [1] | 2,531 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_EquitySecuritiesMember | [1] |  |
Unrealized Gains | 0 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_EquitySecuritiesMember | [1] | 1 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_EquitySecuritiesMember | [1] |  |
Unrealized Losses | (126)us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_EquitySecuritiesMember | [1] | (132)us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_EquitySecuritiesMember | [1] |  |
Fair Value | 2,258 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_EquitySecuritiesMember | [1] | 2,400 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_EquitySecuritiesMember | [1] |  |
Cash and cash equivalents | 0 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_EquitySecuritiesMember | [1] | 0 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_EquitySecuritiesMember | [1] |  |
Short-term marketable securities | 2,258 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_EquitySecuritiesMember | [1] | 2,400 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_EquitySecuritiesMember | [1] |  |
Long-term marketable securities | 0 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_EquitySecuritiesMember | [1] | 0 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_InvestmentTypeAxis = us-gaap_EquitySecuritiesMember | [1] |  |
Level 2 |  |  |  |  |  |
Schedule of Available-for-sale Securities [Line Items] |  |  |  |  |  |
Adjusted Cost | 179,680 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member | [2] | 141,023 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member | [2] |  |
Unrealized Gains | 749 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member | [2] | 417 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member | [2] |  |
Unrealized Losses | (484)us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member | [2] | (379)us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member | [2] |  |
Fair Value | 179,945 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member | [2] | 141,061 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member | [2] |  |
Cash and cash equivalents | 3,153 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member | [2] | 2,066 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member | [2] |  |
Short-term marketable securities | 16,349 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member | [2] | 8,833 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member | [2] |  |
Long-term marketable securities | 160,443 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member | [2] | 130,162 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member | [2] |  |
Level 2 | U.S. Treasury securities |  |  |  |  |  |
Schedule of Available-for-sale Securities [Line Items] |  |  |  |  |  |
Adjusted Cost | 42,854 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USTreasurySecuritiesMember | [2] | 23,140 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USTreasurySecuritiesMember | [2] |  |
Unrealized Gains | 145 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USTreasurySecuritiesMember | [2] | 15 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USTreasurySecuritiesMember | [2] |  |
Unrealized Losses | (12)us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USTreasurySecuritiesMember | [2] | (9)us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USTreasurySecuritiesMember | [2] |  |
Fair Value | 42,987 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USTreasurySecuritiesMember | [2] | 23,146 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USTreasurySecuritiesMember | [2] |  |
Cash and cash equivalents | 0 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USTreasurySecuritiesMember | [2] | 12 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USTreasurySecuritiesMember | [2] |  |
Short-term marketable securities | 1,791 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USTreasurySecuritiesMember | [2] | 607 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USTreasurySecuritiesMember | [2] |  |
Long-term marketable securities | 41,196 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USTreasurySecuritiesMember | [2] | 22,527 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USTreasurySecuritiesMember | [2] |  |
Level 2 | U.S. agency securities |  |  |  |  |  |
Schedule of Available-for-sale Securities [Line Items] |  |  |  |  |  |
Adjusted Cost | 6,901 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USGovernmentAgenciesDebtSecuritiesMember | [2] | 7,373 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USGovernmentAgenciesDebtSecuritiesMember | [2] |  |
Unrealized Gains | 11 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USGovernmentAgenciesDebtSecuritiesMember | [2] | 3 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USGovernmentAgenciesDebtSecuritiesMember | [2] |  |
Unrealized Losses | (2)us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USGovernmentAgenciesDebtSecuritiesMember | [2] | (11)us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USGovernmentAgenciesDebtSecuritiesMember | [2] |  |
Fair Value | 6,910 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USGovernmentAgenciesDebtSecuritiesMember | [2] | 7,365 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USGovernmentAgenciesDebtSecuritiesMember | [2] |  |
Cash and cash equivalents | 585 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USGovernmentAgenciesDebtSecuritiesMember | [2] | 652 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USGovernmentAgenciesDebtSecuritiesMember | [2] |  |
Short-term marketable securities | 1,056 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USGovernmentAgenciesDebtSecuritiesMember | [2] | 157 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USGovernmentAgenciesDebtSecuritiesMember | [2] |  |
Long-term marketable securities | 5,269 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USGovernmentAgenciesDebtSecuritiesMember | [2] | 6,556 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USGovernmentAgenciesDebtSecuritiesMember | [2] |  |
Level 2 | Non-U.S. government securities |  |  |  |  |  |
Schedule of Available-for-sale Securities [Line Items] |  |  |  |  |  |
Adjusted Cost | 7,114 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember | [2] | 6,925 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember | [2] |  |
Unrealized Gains | 86 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember | [2] | 69 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember | [2] |  |
Unrealized Losses | (80)us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember | [2] | (69)us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember | [2] |  |
Fair Value | 7,120 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember | [2] | 6,925 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember | [2] |  |
Cash and cash equivalents | 41 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember | [2] | 0 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember | [2] |  |
Short-term marketable securities | 271 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember | [2] | 204 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember | [2] |  |
Long-term marketable securities | 6,808 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember | [2] | 6,721 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember | [2] |  |
Level 2 | Certificates of deposit and time deposits |  |  |  |  |  |
Schedule of Available-for-sale Securities [Line Items] |  |  |  |  |  |
Adjusted Cost | 3,473 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_BankTimeDepositsMember | [2] | 3,832 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_BankTimeDepositsMember | [2] |  |
Unrealized Gains | 0 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_BankTimeDepositsMember | [2] | 0 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_BankTimeDepositsMember | [2] |  |
Unrealized Losses | 0 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_BankTimeDepositsMember | [2] | 0 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_BankTimeDepositsMember | [2] |  |
Fair Value | 3,473 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_BankTimeDepositsMember | [2] | 3,832 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_BankTimeDepositsMember | [2] |  |
Cash and cash equivalents | 1,163 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_BankTimeDepositsMember | [2] | 1,230 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_BankTimeDepositsMember | [2] |  |
Short-term marketable securities | 1,252 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_BankTimeDepositsMember | [2] | 1,233 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_BankTimeDepositsMember | [2] |  |
Long-term marketable securities | 1,058 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_BankTimeDepositsMember | [2] | 1,369 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_BankTimeDepositsMember | [2] |  |
Level 2 | Commercial paper |  |  |  |  |  |
Schedule of Available-for-sale Securities [Line Items] |  |  |  |  |  |
Adjusted Cost | 2,956 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CommercialPaperMember | [2] | 475 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CommercialPaperMember | [2] |  |
Unrealized Gains | 0 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CommercialPaperMember | [2] | 0 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CommercialPaperMember | [2] |  |
Unrealized Losses | 0 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CommercialPaperMember | [2] | 0 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CommercialPaperMember | [2] |  |
Fair Value | 2,956 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CommercialPaperMember | [2] | 475 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CommercialPaperMember | [2] |  |
Cash and cash equivalents | 1,364 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CommercialPaperMember | [2] | 166 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CommercialPaperMember | [2] |  |
Short-term marketable securities | 1,592 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CommercialPaperMember | [2] | 309 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CommercialPaperMember | [2] |  |
Long-term marketable securities | 0 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CommercialPaperMember | [2] | 0 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CommercialPaperMember | [2] |  |
Level 2 | Corporate securities |  |  |  |  |  |
Schedule of Available-for-sale Securities [Line Items] |  |  |  |  |  |
Adjusted Cost | 100,658 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CorporateDebtSecuritiesMember | [2] | 85,431 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CorporateDebtSecuritiesMember | [2] |  |
Unrealized Gains | 427 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CorporateDebtSecuritiesMember | [2] | 296 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CorporateDebtSecuritiesMember | [2] |  |
Unrealized Losses | (370)us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CorporateDebtSecuritiesMember | [2] | (241)us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CorporateDebtSecuritiesMember | [2] |  |
Fair Value | 100,715 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CorporateDebtSecuritiesMember | [2] | 85,486 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CorporateDebtSecuritiesMember | [2] |  |
Cash and cash equivalents | 0 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CorporateDebtSecuritiesMember | [2] | 6 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CorporateDebtSecuritiesMember | [2] |  |
Short-term marketable securities | 10,325 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CorporateDebtSecuritiesMember | [2] | 6,298 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CorporateDebtSecuritiesMember | [2] |  |
Long-term marketable securities | 90,390 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CorporateDebtSecuritiesMember | [2] | 79,182 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_CorporateDebtSecuritiesMember | [2] |  |
Level 2 | Municipal securities |  |  |  |  |  |
Schedule of Available-for-sale Securities [Line Items] |  |  |  |  |  |
Adjusted Cost | 942 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USStatesAndPoliticalSubdivisionsMember | [2] | 940 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USStatesAndPoliticalSubdivisionsMember | [2] |  |
Unrealized Gains | 5 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USStatesAndPoliticalSubdivisionsMember | [2] | 8 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USStatesAndPoliticalSubdivisionsMember | [2] |  |
Unrealized Losses | (1)us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USStatesAndPoliticalSubdivisionsMember | [2] | 0 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USStatesAndPoliticalSubdivisionsMember | [2] |  |
Fair Value | 946 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USStatesAndPoliticalSubdivisionsMember | [2] | 948 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USStatesAndPoliticalSubdivisionsMember | [2] |  |
Cash and cash equivalents | 0 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USStatesAndPoliticalSubdivisionsMember | [2] | 0 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USStatesAndPoliticalSubdivisionsMember | [2] |  |
Short-term marketable securities | 24 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USStatesAndPoliticalSubdivisionsMember | [2] | 0 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USStatesAndPoliticalSubdivisionsMember | [2] |  |
Long-term marketable securities | 922 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USStatesAndPoliticalSubdivisionsMember | [2] | 948 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_USStatesAndPoliticalSubdivisionsMember | [2] |  |
Level 2 | Mortgage- and asset-backed securities |  |  |  |  |  |
Schedule of Available-for-sale Securities [Line Items] |  |  |  |  |  |
Adjusted Cost | 14,782 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_AssetBackedSecuritiesMember | [2] | 12,907 us-gaap_AvailableForSaleSecuritiesAmortizedCost / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_AssetBackedSecuritiesMember | [2] |  |
Unrealized Gains | 75 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_AssetBackedSecuritiesMember | [2] | 26 us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_AssetBackedSecuritiesMember | [2] |  |
Unrealized Losses | (19)us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_AssetBackedSecuritiesMember | [2] | (49)us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_AssetBackedSecuritiesMember | [2] |  |
Fair Value | 14,838 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_AssetBackedSecuritiesMember | [2] | 12,884 us-gaap_AvailableForSaleSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_AssetBackedSecuritiesMember | [2] |  |
Cash and cash equivalents | 0 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_AssetBackedSecuritiesMember | [2] | 0 us-gaap_CashAndCashEquivalentsAtCarryingValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_AssetBackedSecuritiesMember | [2] |  |
Short-term marketable securities | 38 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_AssetBackedSecuritiesMember | [2] | 25 us-gaap_AvailableForSaleSecuritiesCurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_AssetBackedSecuritiesMember | [2] |  |
Long-term marketable securities | $ 14,800 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_AssetBackedSecuritiesMember | [2] | $ 12,859 us-gaap_AvailableForSaleSecuritiesNoncurrent / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_InvestmentTypeAxis = us-gaap_AssetBackedSecuritiesMember | [2] |  |
[1] | The fair value of Level 1 securities is estimated based on quoted prices in active markets for identical assets or liabilities.
[2] | The fair value of Level 2 securities is estimated based on observable inputs other than quoted prices in active markets for identical assets and liabilities, quoted prices for identical or similar assets or liabilities in inactive markets, or other inputs that are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities.

X
- Definition Amount of investment in debt and equity securities categorized neither as held-to-maturity nor trading. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 320 -SubTopic 10 -Section 25 -Paragraph 1 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=28360136&loc=d3e22054-111558 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 320 -SubTopic 10 -Section 50 -Paragraph 5 -Subparagraph (aa) -URI http://asc.fasb.org/extlink&oid=27724398&loc=d3e27232-111563 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 320 -SubTopic 10 -Section 45 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=6871852&loc=d3e26610-111562 + Details
Name: | us-gaap_AvailableForSaleSecurities
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount before tax of unrealized gain in accumulated other comprehensive income (AOCI) on investments in debt and equity securities classified as available-for-sale. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 320 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=27724398&loc=d3e27161-111563 + Details
Name: | us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedGainBeforeTax
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount before tax of unrealized loss in accumulated other comprehensive income (AOCI) on investments in debt and equity securities classified as available-for-sale. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 320 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c) -URI http://asc.fasb.org/extlink&oid=27724398&loc=d3e27161-111563 + Details
Name: | us-gaap_AvailableForSaleSecuritiesAccumulatedGrossUnrealizedLossBeforeTax
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition This item represents the cost of debt and equity securities, which are categorized neither as held-to-maturity nor trading, net of adjustments including accretion, amortization, collection of cash, previous other-than-temporary impairments recognized in earnings (less any cumulative-effect adjustments recognized, as defined), and fair value hedge accounting adjustments, if any. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02.2) -URI http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682 + Details
Name: | us-gaap_AvailableForSaleSecuritiesAmortizedCost
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount of investment in debt and equity securities categorized neither as trading securities nor held-to-maturity securities and intended be sold or mature one year or operating cycle, if longer. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 320 -SubTopic 10 -Section 25 -Paragraph 1 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=28360136&loc=d3e22054-111558 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 320 -SubTopic 10 -Section 45 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=6871852&loc=d3e26626-111562 + Details
Name: | us-gaap_AvailableForSaleSecuritiesCurrent
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Investments in debt and equity securities which are categorized neither as held-to-maturity nor trading and which are intended to be sold or mature more than one year from the balance sheet date or operating cycle, if longer. Such securities are reported at fair value; unrealized gains (losses) related to Available-for-sale Securities are excluded from earnings and reported in a separate component of shareholders' equity (other comprehensive income), unless the Available-for-sale security is designated as a hedge or is determined to have had an other than temporary decline in fair value below its amortized cost basis. All or a portion of the unrealized holding gain (loss) of an Available-for-sale security that is designated as being hedged in a fair value hedge is recognized in earnings during the period of the hedge, as are other than temporary declines in fair value below the cost basis for investments in equity securities and debt securities that an entity intends to sell or it is more likely than not that it will be required to sell before the recovery of its amortized cost basis. Other than temporary declines in fair value below the cost basis for debt securities categorized as Available-for-sale that an entity does not intend to sell and for which it is not more likely than not that the entity will be required to sell before the recovery of its amortized cost basis are bifurcated into credit losses and losses related to all other factors. Other than temporary declines in fair value below cost basis related to credit losses are recognized in earnings, and losses related to all other factors are recognized in other comprehensive income. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 320 -SubTopic 10 -Section 45 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=6871852&loc=d3e26626-111562 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Glossary Available-for-Sale Securities -URI http://asc.fasb.org/extlink&oid=6505594 + Details
Name: | us-gaap_AvailableForSaleSecuritiesNoncurrent
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition 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. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Glossary Cash -URI http://asc.fasb.org/extlink&oid=6506951 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Glossary Cash Equivalents -URI http://asc.fasb.org/extlink&oid=6507016 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 02 -Paragraph 1 -Article 5 Reference 4: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02.1) -URI http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682 Reference 5: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section 45 -Paragraph 1 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=28358313&loc=d3e6676-107765 Reference 6: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 45 -Paragraph 4 -URI http://asc.fasb.org/extlink&oid=31042434&loc=d3e3044-108585 + Details
Name: | us-gaap_CashAndCashEquivalentsAtCarryingValue
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Details
Name: | us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_InvestmentTypeAxis=us-gaap_CashMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |