v2.4.1.9

CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (USD $) In Thousands | Total | Class A Common Stock | Class B Convertible Common Stock | Additional Paid-in Capital | Treasury Stock | Accumulated Other Comprehensive Income (Loss) | Retained Earnings
--- | --- | --- | --- | --- | --- | --- | ---
Beginning Balance at Dec. 31, 2011 | $ 168,978us-gaap_StockholdersEquity | $ 15us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | $ 2us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember | $ 457,837us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | $ (475,184)us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember | $ (2,052)us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | $ 188,360us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember
Beginning Balance (in shares) at Dec. 31, 2011 |  | 14,810us-gaap_CommonStockSharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 2,378us-gaap_CommonStockSharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember |  | (6,405)us-gaap_CommonStockSharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember |  |
Net income (loss) | 20,546us-gaap_NetIncomeLoss | 0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember | 0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember | 0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 20,546us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember
Other comprehensive (loss) income | 537us-gaap_OtherComprehensiveIncomeLossNetOfTax | 0us-gaap_OtherComprehensiveIncomeLossNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 0us-gaap_OtherComprehensiveIncomeLossNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember | 0us-gaap_OtherComprehensiveIncomeLossNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0us-gaap_OtherComprehensiveIncomeLossNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember | 537us-gaap_OtherComprehensiveIncomeLossNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0us-gaap_OtherComprehensiveIncomeLossNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember
Conversion of class B to class A common stock | 0us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities | 0us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 0us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember | 0us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember | 0us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember
Conversion of class B to class A common stock (in shares) |  | 151us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | (151)us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember |  | 0us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember |  |
Issuance of class A common stock under stock option plans | 10,250us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised | 0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember | 10,250us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember | 0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember
Issuance of class A common stock under stock option plans (in shares) | 501us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised | 501us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 0us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember |  | 0us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember |  |
Ending Balance at Dec. 31, 2012 | 200,311us-gaap_StockholdersEquity | 15us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 2us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember | 468,087us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | (475,184)us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember | (1,515)us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 208,906us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember
Ending Balance (in shares) at Dec. 31, 2012 |  | 15,462us-gaap_CommonStockSharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 2,227us-gaap_CommonStockSharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember |  | (6,405)us-gaap_CommonStockSharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember |  |
Net income (loss) | 83,332us-gaap_NetIncomeLoss | 0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember | 0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember | 0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 83,332us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember
Other comprehensive (loss) income | 684us-gaap_OtherComprehensiveIncomeLossNetOfTax | 0us-gaap_OtherComprehensiveIncomeLossNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 0us-gaap_OtherComprehensiveIncomeLossNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember | 0us-gaap_OtherComprehensiveIncomeLossNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0us-gaap_OtherComprehensiveIncomeLossNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember | 684us-gaap_OtherComprehensiveIncomeLossNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0us-gaap_OtherComprehensiveIncomeLossNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember
Issuance of class A common stock under stock option plans | 341us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised | 0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember | 341us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember | 0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember
Issuance of class A common stock under stock option plans (in shares) | 16us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised | 16us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 0us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember |  | 0us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember |  |
Tax effect of stock option exercises | 23,580us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation | 0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember | 23,580us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember | 0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember
Share-based compensation expense | 2,078us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue | 0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember | 2,078us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember | 0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember
Ending Balance at Dec. 31, 2013 | 310,326us-gaap_StockholdersEquity | 15us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 2us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember | 494,086us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | (475,184)us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember | (831)us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 292,238us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember
Ending Balance (in shares) at Dec. 31, 2013 |  | 15,478us-gaap_CommonStockSharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 2,227us-gaap_CommonStockSharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember |  | (6,405)us-gaap_CommonStockSharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember |  |
Net income (loss) | 5,035us-gaap_NetIncomeLoss | 0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember | 0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember | 0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 5,035us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember
Other comprehensive (loss) income | (3,532)us-gaap_OtherComprehensiveIncomeLossNetOfTax | 0us-gaap_OtherComprehensiveIncomeLossNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 0us-gaap_OtherComprehensiveIncomeLossNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember | 0us-gaap_OtherComprehensiveIncomeLossNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0us-gaap_OtherComprehensiveIncomeLossNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember | (3,532)us-gaap_OtherComprehensiveIncomeLossNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0us-gaap_OtherComprehensiveIncomeLossNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember
Conversion of class B to class A common stock | 0us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities | 0us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 0us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember | 0us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember | 0us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember
Conversion of class B to class A common stock (in shares) |  | 172us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | (172)us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember |  | 0us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember |  |
Issuance of class A common stock under stock option plans | 856us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised | 1us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember | 855us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember | 0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember
Issuance of class A common stock under stock option plans (in shares) | 9us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised | 10us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 0us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember |  | 0us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember |  |
Share-based compensation expense | 11,786us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue | 0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember | 11,786us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | 0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember | 0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | 0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember
Ending Balance at Dec. 31, 2014 | $ 324,471us-gaap_StockholdersEquity | $ 16us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | $ 2us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember | $ 506,727us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember | $ (475,184)us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember | $ (4,363)us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember | $ 297,273us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember
Ending Balance (in shares) at Dec. 31, 2014 |  | 15,660us-gaap_CommonStockSharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassAMember | 2,055us-gaap_CommonStockSharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonClassBMember |  | (6,405)us-gaap_CommonStockSharesIssued / us-gaap_StatementEquityComponentsAxis = us-gaap_TreasuryStockMember |  |

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 Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury. + 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.29) -URI http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 02 -Paragraph 30 -Article 5 + Details
Name: | us-gaap_CommonStockSharesIssued
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

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 other comprehensive income (loss). + 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 220 -SubTopic 10 -Section 45 -Paragraph 1A -URI http://asc.fasb.org/extlink&oid=36458714&loc=SL7669619-108580 + Details
Name: | us-gaap_OtherComprehensiveIncomeLossNetOfTax
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 the conversion of convertible securities. + 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 10 -Section 50 -Paragraph 3 -URI http://asc.fasb.org/extlink&oid=6928386&loc=d3e21475-112644 Reference 5: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 02 -Paragraph 29, 30 -Article 5 Reference 6: 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-30) -URI http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682 + Details
Name: | us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
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 The gross value of stock issued during the period upon the conversion of convertible securities. + 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_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
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