XML 65 R7.htm IDEA: XBRL DOCUMENT
v2.4.1.9

Consolidated Statements of Stockholders' Equity (USD $) In Thousands | Total | Common Stock [Member] | Additional Paid-in Capital [Member] | Accumulated Other Comprehensive Income (Loss) [Member] | Retained Earnings [Member] | Treasury Stock [Member]
--- | --- | --- | --- | --- | --- | ---
Balance at Dec. 30, 2011 | $ 186,715 us-gaap_StockholdersEquity | $ 16 us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | $ 108,071 us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | $ (471)us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | $ 179,432 us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | $ (100,333)us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Balance (in shares) at Dec. 30, 2011 |  | 16,427 us-gaap_SharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |  |  |  | 3,127 us-gaap_SharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Employee stock purchase plan | 1,008 us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan | 0 us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 400 us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 608 us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Employee stock purchase plan (in shares) |  | 0 us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |  |  |  | (20)us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Exercise of stock options, net of swaps | 2,607 us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised | 0 us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | (358)us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | (3,123)us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 6,088 us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Exercise of stock options, net of swaps (in shares) |  | 0 us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |  |  |  | (200)us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Excess tax benefit for equity incentive plans | 3,948 us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 3,948 us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Amortization of unrecognized stock-based compensation | 6,289 us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 6,289 us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Purchase of treasury shares | (23,395)us-gaap_TreasuryStockValueAcquiredCostMethod | 0 us-gaap_TreasuryStockValueAcquiredCostMethod / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 0 us-gaap_TreasuryStockValueAcquiredCostMethod / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_TreasuryStockValueAcquiredCostMethod / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_TreasuryStockValueAcquiredCostMethod / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | (23,395)us-gaap_TreasuryStockValueAcquiredCostMethod / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Purchase of treasury shares (in shares) | 480 us-gaap_TreasuryStockSharesAcquired | 0 us-gaap_TreasuryStockSharesAcquired / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |  |  |  | 480 us-gaap_TreasuryStockSharesAcquired / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Foreign currency translation adjustments | 249 us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax | 0 us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 0 us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 249 us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Grant of restricted stock units to settle accrued bonus | 5,343 us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation | 0 us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 5,343 us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Settlement of restricted stock units | (3,532)us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures | 0 us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 0 us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | (7,477)us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 3,945 us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Settlement of restricted stock units (in shares) |  | 0 us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |  |  |  | (166)us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Unrealized gain on investments | (28)us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax | 0 us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 0 us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | (28)us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Net income | 37,225 us-gaap_NetIncomeLoss | 0 us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 0 us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 37,225 us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Balance at Dec. 28, 2012 | 216,429 us-gaap_StockholdersEquity | 16 us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 123,693 us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | (250)us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 206,057 us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | (113,087)us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Balance (in shares) at Dec. 28, 2012 |  | 16,427 us-gaap_SharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |  |  |  | 3,221 us-gaap_SharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Employee stock purchase plan | 1,166 us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan | 0 us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 648 us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 518 us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Employee stock purchase plan (in shares) |  | 0 us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |  |  |  | (19)us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Exercise of stock options, net of swaps | 294 us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised | 0 us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | (302)us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | (1,031)us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 1,627 us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Exercise of stock options, net of swaps (in shares) |  | 0 us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |  |  |  | (61)us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Excess tax benefit for equity incentive plans | 4,267 us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 4,267 us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Amortization of unrecognized stock-based compensation | 7,107 us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 7,107 us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Purchase of treasury shares | (25,011)us-gaap_TreasuryStockValueAcquiredCostMethod | 0 us-gaap_TreasuryStockValueAcquiredCostMethod / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 0 us-gaap_TreasuryStockValueAcquiredCostMethod / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_TreasuryStockValueAcquiredCostMethod / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_TreasuryStockValueAcquiredCostMethod / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | (25,011)us-gaap_TreasuryStockValueAcquiredCostMethod / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Purchase of treasury shares (in shares) | 438 us-gaap_TreasuryStockSharesAcquired | 0 us-gaap_TreasuryStockSharesAcquired / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |  |  |  | 438 us-gaap_TreasuryStockSharesAcquired / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Foreign currency translation adjustments | 373 us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax | 0 us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 0 us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 373 us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Grant of restricted stock units to settle accrued bonus | 5,807 us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation | 0 us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 5,807 us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Settlement of restricted stock units | (6,028)us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures | 0 us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | (273)us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | (9,352)us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 3,597 us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Settlement of restricted stock units (in shares) |  | 0 us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |  |  |  | (216)us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Unrealized gain on investments | (14)us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax | 0 us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 0 us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | (14)us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Dividends and dividend equivalent rights | (7,971)expo_DividendsAndDividendEquivalentPaymentsDeclared | 0 expo_DividendsAndDividendEquivalentPaymentsDeclared / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 303 expo_DividendsAndDividendEquivalentPaymentsDeclared / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 expo_DividendsAndDividendEquivalentPaymentsDeclared / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | (8,274)expo_DividendsAndDividendEquivalentPaymentsDeclared / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 expo_DividendsAndDividendEquivalentPaymentsDeclared / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Net income | 38,640 us-gaap_NetIncomeLoss | 0 us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 0 us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 38,640 us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Balance at Jan. 03, 2014 | 235,059 us-gaap_StockholdersEquity | 16 us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 141,250 us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 109 us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 226,040 us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | (132,356)us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Balance (in shares) at Jan. 03, 2014 |  | 16,427 us-gaap_SharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |  |  |  | 3,363 us-gaap_SharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Employee stock purchase plan | 1,147 us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan | 0 us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 810 us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 337 us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Employee stock purchase plan (in shares) |  | 0 us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |  |  |  | (16)us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Exercise of stock options, net of swaps | 960 us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised | 0 us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 67 us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 893 us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Exercise of stock options, net of swaps (in shares) |  | 0 us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |  |  |  | (42)us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Excess tax benefit for equity incentive plans | 5,100 us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 5,100 us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Amortization of unrecognized stock-based compensation | 6,792 us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 6,792 us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Purchase of treasury shares | (30,921)us-gaap_TreasuryStockValueAcquiredCostMethod | 0 us-gaap_TreasuryStockValueAcquiredCostMethod / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 0 us-gaap_TreasuryStockValueAcquiredCostMethod / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_TreasuryStockValueAcquiredCostMethod / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |  | (30,921)us-gaap_TreasuryStockValueAcquiredCostMethod / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Purchase of treasury shares (in shares) | 425 us-gaap_TreasuryStockSharesAcquired | 0 us-gaap_TreasuryStockSharesAcquired / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |  |  |  | 425 us-gaap_TreasuryStockSharesAcquired / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Foreign currency translation adjustments | (1,017)us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax | 0 us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 0 us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | (1,017)us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Grant of restricted stock units to settle accrued bonus | 6,008 us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation | 0 us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 6,008 us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Settlement of restricted stock units | (6,356)us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures | 0 us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | (343)us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | (6,050)us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 37 us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Settlement of restricted stock units (in shares) |  | 0 us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |  |  |  | (174)us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Unrealized gain on investments | 4 us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax | 0 us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 0 us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 4 us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0 us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Dividends and dividend equivalent rights | (13,189)expo_DividendsAndDividendEquivalentPaymentsDeclared | 0 expo_DividendsAndDividendEquivalentPaymentsDeclared / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 541 expo_DividendsAndDividendEquivalentPaymentsDeclared / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 expo_DividendsAndDividendEquivalentPaymentsDeclared / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | (13,730)expo_DividendsAndDividendEquivalentPaymentsDeclared / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 expo_DividendsAndDividendEquivalentPaymentsDeclared / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Net income | 40,701 us-gaap_NetIncomeLoss | 0 us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | 0 us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0 us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 40,701 us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | 0 us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Balance at Jan. 02, 2015 | $ 244,288 us-gaap_StockholdersEquity | $ 16 us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember | $ 160,225 us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | $ (904)us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | $ 246,961 us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember | $ (162,010)us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember
Balance (in shares) at Jan. 02, 2015 |  | 16,427 us-gaap_SharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |  |  |  | 3,556 us-gaap_SharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember

X
- Definition Dividends and dividend equivalent payments declared on common stock, restricted stock units, and stock options. + References No definition available. + Details
Name: | expo_DividendsAndDividendEquivalentPaymentsDeclared
Namespace Prefix: | expo_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition This element represents the amount of recognized equity-based compensation during the period, that is, the amount recognized as expense in the income statement (or as asset if compensation is capitalized). Alternate captions include the words "stock-based compensation". + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 35 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=6415241&loc=d3e4534-113899 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 1 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5047-113901 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 20 -Section 55 -Paragraph 12 -URI http://asc.fasb.org/extlink&oid=32706628&loc=d3e11149-113907 Reference 4: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 20 -Section 55 -Paragraph 13 -URI http://asc.fasb.org/extlink&oid=32706628&loc=d3e11178-113907 + Details
Name: | us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of increase in additional paid in capital (APIC) resulting from a tax benefit associated with share-based compensation plan other than an employee stock ownership plan (ESOP). Includes, but is not limited to, excess tax benefit. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section 50 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=6928386&loc=d3e21463-112644 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.3-04) -URI http://asc.fasb.org/extlink&oid=27012166&loc=d3e187085-122770 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 740 -Section 45 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=6419406&loc=d3e23524-113945 + Details
Name: | us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition The portion of profit or loss for the period, net of income taxes, which is attributable to the parent. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 45 -Paragraph 28 -URI http://asc.fasb.org/extlink&oid=31042434&loc=d3e3602-108585 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 260 -SubTopic 10 -Section 50 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Glossary Other Comprehensive Income -URI http://asc.fasb.org/extlink&oid=6519514 Reference 4: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Glossary Net Income -URI http://asc.fasb.org/extlink&oid=6518256 Reference 5: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 944 -SubTopic 225 -Section S99 -Paragraph 1 -Subparagraph (SX 210.7-04.19) -URI http://asc.fasb.org/extlink&oid=6879464&loc=d3e573970-122913 Reference 6: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 225 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03.18) -URI http://asc.fasb.org/extlink&oid=26872669&loc=d3e20235-122688 Reference 7: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 944 -SubTopic 225 -Section S99 -Paragraph 1 -Subparagraph (SX 210.7-04.22) -URI http://asc.fasb.org/extlink&oid=6879464&loc=d3e573970-122913 Reference 8: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 03 -Paragraph 19 -Article 5 Reference 9: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 04 -Paragraph 20 -Article 9 + Details
Name: | us-gaap_NetIncomeLoss
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section 45 -Paragraph 10A -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=36458714&loc=SL7669646-108580 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 830 -SubTopic 30 -Section 45 -Paragraph 20 -Subparagraph (b,c) -URI http://asc.fasb.org/extlink&oid=6915805&loc=d3e32211-110900 + Details
Name: | us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount after tax, before reclassification adjustments, of unrealized holding gain (loss) on available-for-sale securities. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section 45 -Paragraph 11 -URI http://asc.fasb.org/extlink&oid=36458714&loc=d3e637-108580 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section 45 -Paragraph 10A -Subparagraph (e) -URI http://asc.fasb.org/extlink&oid=36458714&loc=SL7669646-108580 + Details
Name: | us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Number of shares of stock issued as of the balance sheet date, including shares that had been issued and were previously outstanding but which are now held in the treasury. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section 50 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=6928386&loc=d3e21463-112644 + Details
Name: | us-gaap_SharesIssued
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Definition Value, after forfeitures, of stock or other type of equity granted of any equity-based compensation plan other than an employee stock ownership plan (ESOP). + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 30 -Paragraph 3 -URI http://asc.fasb.org/extlink&oid=6743629&loc=d3e3913-113898 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 30 -Section 35 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=6418191&loc=d3e15009-113911 + Details
Name: | us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SAB TOPIC 4.E) -URI http://asc.fasb.org/extlink&oid=27010918&loc=d3e74512-122707 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Staff Accounting Bulletin (SAB) -Number Topic 4 -Section E Reference 3: 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.29-31) -URI http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682 Reference 4: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 02 -Paragraph 29, 30, 31 -Article 5 + Details
Name: | us-gaap_StockholdersEquity
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Number of shares issued during the period as a result of an employee stock purchase plan. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 04 -Article 3 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section 50 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=6928386&loc=d3e21463-112644 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.3-04) -URI http://asc.fasb.org/extlink&oid=27012166&loc=d3e187085-122770 Reference 4: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 02 -Paragraph 29, 30 -Article 5 + Details
Name: | us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | duration

X
- Definition Number of shares issued during the period related to Restricted Stock Awards, net of any shares forfeited. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 04 -Article 3 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section 50 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=6928386&loc=d3e21463-112644 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.3-04) -URI http://asc.fasb.org/extlink&oid=27012166&loc=d3e187085-122770 Reference 4: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 02 -Paragraph 29, 30 -Article 5 + Details
Name: | us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | duration

X
- Definition Number of share options (or share units) exercised during the current period. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 04 -Article 3 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section 50 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=6928386&loc=d3e21463-112644 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.3-04) -URI http://asc.fasb.org/extlink&oid=27012166&loc=d3e187085-122770 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.28,29) -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 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(1)(iv)(2) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5070-113901 Reference 6: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 02 -Paragraph 29, 30 -Article 5 + Details
Name: | us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | duration

X
- Definition Aggregate change in value for stock issued during the period as a result of employee stock purchase plan. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 04 -Article 3 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section 50 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=6928386&loc=d3e21463-112644 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.3-04) -URI http://asc.fasb.org/extlink&oid=27012166&loc=d3e187085-122770 Reference 4: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 02 -Paragraph 29, 30, 31 -Article 5 + Details
Name: | us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Value of stock related to Restricted Stock Awards issued during the period, net of the stock value of such awards forfeited. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section 50 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=6928386&loc=d3e21463-112644 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.3-04) -URI http://asc.fasb.org/extlink&oid=27012166&loc=d3e187085-122770 + Details
Name: | us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Value of stock issued as a result of the exercise of stock options. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 04 -Article 3 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section 50 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=6928386&loc=d3e21463-112644 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.3-04) -URI http://asc.fasb.org/extlink&oid=27012166&loc=d3e187085-122770 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.29-31) -URI http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682 Reference 5: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 02 -Paragraph 29, 30, 31 -Article 5 + Details
Name: | us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Number of shares that have been repurchased during the period and are being held in treasury. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 04 -Article 3 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section 50 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=6928386&loc=d3e21463-112644 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 02 -Paragraph 29, 30 -Article 5 + Details
Name: | us-gaap_TreasuryStockSharesAcquired
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | duration

X
- Definition Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost method. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 04 -Article 3 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section 50 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=6928386&loc=d3e21463-112644 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.3-04) -URI http://asc.fasb.org/extlink&oid=27012166&loc=d3e187085-122770 Reference 4: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 505 -SubTopic 30 -Section 45 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=6405813&loc=d3e23239-112655 + Details
Name: | us-gaap_TreasuryStockValueAcquiredCostMethod
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration