2024 | 2023 | 2022 | 2021 | 2020 | 2019 | 2018 | 2017 | 2016 | 2015 | |
---|---|---|---|---|---|---|---|---|---|---|
GoodwillAndIntangibleAssetImpairment | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized | 6.20M | |||||||||
EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance | -0.02 | -0.02 | -0.02 | |||||||
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross | 50000.00 | |||||||||
GrossProfit | 242.53M | 234.84M | 204.51M | 50.98M | 54.02M | 62.24M | 48.95M | 43.34M | 41.16M | |
IncomeTaxExpenseBenefit | 18.38M | 18.04M | 12.58M | 8.83M | 12.85M | 6.71M | 9.21M | 6.79M | 2.41M | |
GainLossOnInvestments | -0.16M | 51000.00 | 3000.00 | |||||||
ComprehensiveIncomeNetOfTax | 57.41M | 18.59M | 31.59M | 38.51M | 56.18M | 34.42M | 23.74M | 18.83M | 25.49M | |
IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments | -42.64M | |||||||||
InterestExpense | 0.17M | 0.14M | 0.37M | 1.24M | 1.79M | 1.05M | 0.31M | 0.81M | 0.42M | |
CommonStockDividendsPerShareCashPaid | 1.20 | 1.20 | 1.10 | 1.10 | 1.10 | 1.00 | 1.00 | 0.22 | ||
DefinedContributionPlanEmployerDiscretionaryContributionAmount | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |
GainLossOnSaleOfPropertyPlantEquipment | -0.26M | -0.14M | -0.11M | -0.57M | -64000.00 | -64000.00 | -31000.00 | -31000.00 | ||
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate | 0.21 | 0.21 | 0.21 | 0.21 | 0.21 | 0.21 | 0.35 | 0.35 | 0.35 | |
RevenueFromContractWithCustomerIncludingAssessedTax | 1.07B | 1.05B | 955.17M | 233.18M | 245.15M | 237.83M | ||||
PaymentsOfDividends | 8.09M | 8.52M | 9.07M | 9.12M | 8.21M | 7.35M | 7.28M | 6.36M | 6.31M | |
EarningsPerShareDiluted | 7.39 | 6.54 | 5.00 | 0.93 | 1.51 | 2.21 | 1.38 | 1.08 | 1.55 | |
AllocatedShareBasedCompensationExpense | 8.50M | 7.40M | 5.40M | 3.40M | 7.20M | 5.50M | 4.20M | 2.80M | 2.39M | |
EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate | 0.03 | 0.03 | 0.03 | |||||||
AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount | 0.23M | |||||||||
OperatingLeaseCost | 7.89M | 7.75M | 8.96M | 8.35M | 7.83M | |||||
NonoperatingIncomeExpense | 8.34M | 6.33M | 6.74M | 6.45M | 10.65M | 7.78M | 4.44M | -3.35M | -0.22M | |
GainLossRelatedToLitigationSettlement | -3.54M | -3.54M | -3.54M | |||||||
DeferredStateAndLocalIncomeTaxExpenseBenefit | 1.84M | -1.08M | -0.50M | 1.34M | 3.43M | -0.29M | -2.27M | -1.77M | 1.04M | |
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeCompensation | 0.75M | 0.75M | 1.67M | |||||||
SellingGeneralAndAdministrativeExpense | 174.77M | 169.64M | 155.26M | 141.92M | 153.88M | 145.46M | 123.14M | 113.34M | 26.34M | |
DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent | 0.03 | 0.03 | 0.03 | |||||||
CurrentFederalTaxExpenseBenefit | 11.90M | 14.68M | 9.53M | 2.94M | 8.81M | 7.41M | 5.08M | 6.44M | 5.83M | |
OperatingIncomeLoss | 60.65M | 58.98M | 43.92M | 36.15M | 50.49M | 36.99M | 29.94M | 28.94M | 14.08M | |
EffectiveIncomeTaxRateReconciliationOtherAdjustments | -0.01 | 0.00 | 0.01 | 0.01 | -0.00 | -0.01 | -0.01 | 0.00 | -0.04 | |
OtherNonoperatingIncomeExpense | -0.14M | -7000.00 | -0.10M | -0.28M | -81000.00 | -0.24M | 82000.00 | 40000.00 | -6000.00 | |
CostOfRevenue | 195.78M | 177.76M | 152.60M | |||||||
NetIncomeLoss | 50.61M | 47.27M | 38.08M | 7.15M | 11.71M | 16.86M | 10.49M | 8.05M | 11.45M | |
PaymentsOfDebtIssuanceCosts | 0.40M | 0.00 | ||||||||
CurrentStateAndLocalTaxExpenseBenefit | 1.85M | 5.53M | 3.41M | 0.40M | 1.38M | 0.41M | 89000.00 | 2.03M | 0.92M | |
CostOfGoodsAndServicesSold | 826.77M | 819.48M | 750.66M | 182.20M | 191.13M | 175.59M | ||||
ExcessTaxBenefitFromShareBasedCompensationFinancingActivities | -68000.00 | |||||||||
CurrentIncomeTaxExpenseBenefit | 13.75M | 20.21M | 12.94M | 3.34M | 10.19M | 7.82M | 5.17M | 8.47M | 6.75M | |
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest | 68.99M | 65.30M | 50.66M | 42.60M | 61.14M | 44.77M | 34.38M | 25.59M | 13.86M | |
OperatingLeasesRentExpenseNet | 4.90M | 4.50M | 4.10M | |||||||
DividendsCommonStockCash | 8.09M | 8.52M | 9.07M | 9.12M | 8.21M | 7.35M | 7.28M | 6.36M | 6.31M | |
NumberOfOperatingSegments | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | |||
ShareBasedCompensation | 8.46M | 7.39M | 5.37M | 3.44M | 7.17M | 5.50M | 4.18M | 2.78M | 2.39M | |
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice | 29.99 | |||||||||
ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate | 0.03 | |||||||||
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice | 17.35 | |||||||||
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber | 0.36M | |||||||||
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice | 14.71 | |||||||||
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | ||
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1 | 6.00M | |||||||||
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice | 14.59 | |||||||||
ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber | 0.15M | |||||||||
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber | 0.21M | |||||||||
ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate | 0.01 | |||||||||
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue | 1.10M | |||||||||
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue | 9.43M | |||||||||
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod | 9250.00 | |||||||||
ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate | 0.49 | |||||||||
WeightedAverageNumberOfSharesOutstandingBasic | 6.73M | 7.13M | 7.54M | 7.58M | 7.45M | 7.34M | 7.28M | 7.23M | 7.20M | |
WeightedAverageNumberOfDilutedSharesOutstanding | 6.85M | 7.23M | 7.62M | 7.69M | 7.70M | 7.65M | 7.55M | 7.38M | 7.40M | |
EmployeeServiceShareBasedCompensationTaxBenefitRealizedFromExerciseOfStockOptions | 1.10M | 0.95M | ||||||||
LeaseAndRentalExpense | 7.90M | 7.90M | ||||||||
EarningsPerShareBasic | 7.52 | 6.63 | 5.05 | 0.94 | 1.57 | 2.28 | 1.44 | 1.11 | 1.59 | |
EffectiveIncomeTaxRateContinuingOperations | 0.27 | 0.28 | 0.25 | 0.21 | 0.21 | 0.15 | 0.27 | 0.27 | 0.28 | |
Revenues | 244.73M | 221.10M | 193.76M | |||||||
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost | 0.91M | 0.74M | 0.68M | 0.56M | 0.91M | 0.99M | 0.81M | 0.99M | 0.72M | |
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts | 31000.00 | 0.11M | ||||||||
AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet | 0.25M | 0.25M | 0.25M | -68000.00 | ||||||
Depreciation | 3.60M | 3.40M | 3.10M | 3.40M | ||||||
DepreciationAndAmortization | 7.11M | 6.23M | 5.33M | 4.84M | 3.89M | 4.22M | 5.45M | 3.25M | 0.74M | |
DeferredFederalIncomeTaxExpenseBenefit | 2.78M | -1.10M | 0.14M | 4.16M | -0.77M | -0.82M | 6.31M | 85000.00 | 1.85M | |
LeaseCost | 9.33M | 9.22M | 9.74M | 9.99M | 9.20M | |||||
IncreaseDecreaseInOtherOperatingCapitalNet | 0.16M | -0.30M | -13000.00 | 0.23M | 7000.00 | |||||
DeferredIncomeTaxExpenseBenefit | 4.63M | -2.18M | -0.35M | 5.49M | 2.66M | -1.11M | 4.04M | -1.69M | 2.90M | |
ExcessTaxBenefitFromShareBasedCompensationOperatingActivities | -68000.00 | |||||||||
EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions | 1.60M | 1.20M | 1.30M | 0.80M | 1.30M | 1.50M | 1.50M | |||
ImpairmentOfLongLivedAssetsHeldForUse | 0.00 | 0.00 | 0.00 |