2024 Q3 Form 10-Q Financial Statement
#000114036124035956 Filed on August 07, 2024
Income Statement
Concept | 2024 Q3 | 2024 Q2 |
---|---|---|
Revenue | $515.2M | $544.5M |
YoY Change | -12.33% | -5.16% |
Cost Of Revenue | $367.2M | $410.1M |
YoY Change | -17.16% | -5.06% |
Gross Profit | $148.0M | $134.5M |
YoY Change | 2.51% | -5.48% |
Gross Profit Margin | 28.73% | 24.7% |
Selling, General & Admin | $98.97M | $93.61M |
YoY Change | 6.82% | 3.67% |
% of Gross Profit | 66.88% | 69.61% |
Research & Development | ||
YoY Change | ||
% of Gross Profit | ||
Depreciation & Amortization | $6.658M | $5.922M |
YoY Change | 2.43% | 2.9% |
% of Gross Profit | 4.5% | 4.4% |
Operating Expenses | $105.3M | $99.01M |
YoY Change | 5.8% | 3.2% |
Operating Profit | $42.72M | $35.47M |
YoY Change | -4.78% | -23.45% |
Interest Expense | -$537.0K | -$585.0K |
YoY Change | -144.02% | -168.74% |
% of Operating Profit | -1.26% | -1.65% |
Other Income/Expense, Net | $579.0K | $2.073M |
YoY Change | 394.87% | 991.05% |
Pretax Income | $43.30M | $37.54M |
YoY Change | -3.74% | -19.3% |
Income Tax | $12.00M | $10.20M |
% Of Pretax Income | 27.72% | 27.18% |
Net Earnings | $31.31M | $27.34M |
YoY Change | -4.15% | -19.23% |
Net Earnings / Revenue | 6.08% | 5.02% |
Basic Earnings Per Share | $1.18 | $1.03 |
Diluted Earnings Per Share | $1.17 | $1.02 |
COMMON SHARES | ||
Basic Shares Outstanding | 26.87M | 26.95M |
Diluted Shares Outstanding | 26.68M | 26.80M |
Balance Sheet
Concept | 2024 Q3 | 2024 Q2 |
---|---|---|
SHORT-TERM ASSETS | ||
Cash & Short-Term Investments | $187.5M | $349.9M |
YoY Change | 127.31% | 244.49% |
Cash & Equivalents | $187.5M | $349.9M |
Short-Term Investments | ||
Other Short-Term Assets | $58.66M | $23.95M |
YoY Change | -3.48% | -49.13% |
Inventory | $93.86M | $89.13M |
Prepaid Expenses | ||
Receivables | $588.0M | $577.0M |
Other Receivables | $212.5M | $164.1M |
Total Short-Term Assets | $1.202B | $1.264B |
YoY Change | -5.27% | -0.94% |
LONG-TERM ASSETS | ||
Property, Plant & Equipment | $3.703M | $5.051M |
YoY Change | ||
Goodwill | $203.2M | $161.5M |
YoY Change | 28.47% | 2.03% |
Intangibles | $94.17M | $40.29M |
YoY Change | 100.6% | -21.39% |
Long-Term Investments | ||
YoY Change | ||
Other Assets | $104.1M | $94.42M |
YoY Change | 44.25% | 33.37% |
Total Long-Term Assets | $497.7M | $386.9M |
YoY Change | 42.37% | -4.4% |
TOTAL ASSETS | ||
Total Short-Term Assets | $1.202B | $1.264B |
Total Long-Term Assets | $497.7M | $386.9M |
Total Assets | $1.700B | $1.651B |
YoY Change | 5.02% | -1.77% |
SHORT-TERM LIABILITIES | ||
YoY Change | ||
Accounts Payable | $281.9M | $270.6M |
YoY Change | -4.71% | -22.99% |
Accrued Expenses | $45.16M | $40.49M |
YoY Change | 17.0% | -1.59% |
Deferred Revenue | $143.3M | $138.6M |
YoY Change | 20.54% | 16.51% |
Short-Term Debt | $0.00 | $0.00 |
YoY Change | -100.0% | -100.0% |
Long-Term Debt Due | $28.97M | $29.90M |
YoY Change | -30.69% | 68.52% |
Total Short-Term Liabilities | $649.9M | $628.2M |
YoY Change | -7.2% | -21.55% |
LONG-TERM LIABILITIES | ||
Long-Term Debt | $9.723M | $10.85M |
YoY Change | 0.24% | 116.86% |
Other Long-Term Liabilities | $93.41M | $89.96M |
YoY Change | 49.98% | 47.45% |
Total Long-Term Liabilities | $93.41M | $89.96M |
YoY Change | 49.98% | 47.45% |
TOTAL LIABILITIES | ||
Total Short-Term Liabilities | $649.9M | $628.2M |
Total Long-Term Liabilities | $93.41M | $89.96M |
Total Liabilities | $753.1M | $729.0M |
YoY Change | -2.59% | -15.96% |
SHAREHOLDERS EQUITY | ||
Retained Earnings | $801.6M | $770.3M |
YoY Change | 15.56% | 16.53% |
Common Stock | $276.0K | $276.0K |
YoY Change | 0.73% | 0.73% |
Preferred Stock | ||
YoY Change | ||
Treasury Stock (at cost) | $47.46M | $35.75M |
YoY Change | 112.12% | 66.64% |
Treasury Stock Shares | ||
Shareholders Equity | $947.0M | $921.9M |
YoY Change | ||
Total Liabilities & Shareholders Equity | $1.700B | $1.651B |
YoY Change | 5.02% | -1.77% |
Cashflow Statement
Concept | 2024 Q3 | 2024 Q2 |
---|---|---|
OPERATING ACTIVITIES | ||
Net Income | $31.31M | $27.34M |
YoY Change | -4.15% | -19.23% |
Depreciation, Depletion And Amortization | $6.658M | $5.922M |
YoY Change | 2.43% | 2.9% |
Cash From Operating Activities | -$21.63M | $97.13M |
YoY Change | -169.32% | -564.72% |
INVESTING ACTIVITIES | ||
Capital Expenditures | $1.291M | $1.967M |
YoY Change | -32.05% | -46.81% |
Acquisitions | $0.00 | |
YoY Change | -100.0% | |
Other Investing Activities | -$124.5M | $61.00K |
YoY Change | -1212.04% | -100.1% |
Cash From Investing Activities | -$125.8M | -$1.906M |
YoY Change | -1453.12% | -96.98% |
FINANCING ACTIVITIES | ||
Cash Dividend Paid | ||
YoY Change | ||
Common Stock Issuance & Retirement, Net | ||
YoY Change | ||
Debt Paid & Issued, Net | ||
YoY Change | ||
Cash From Financing Activities | -15.88M | 1.612M |
YoY Change | -73.53% | -98.05% |
NET CHANGE | ||
Cash From Operating Activities | -21.63M | 97.13M |
Cash From Investing Activities | -125.8M | -1.906M |
Cash From Financing Activities | -15.88M | 1.612M |
Net Change In Cash | -163.4M | 96.89M |
YoY Change | 737.7% | -6478.41% |
FREE CASH FLOW | ||
Cash From Operating Activities | -$21.63M | $97.13M |
Capital Expenditures | $1.291M | $1.967M |
Free Cash Flow | -$22.92M | $95.16M |
YoY Change | -178.22% | -486.86% |
Facts In Submission
Frame | Concept Type | Concept / XBRL Key | Value | Unit |
---|---|---|---|---|
CY2023Q2 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
90298000 | |
CY2024Q2 | us-gaap |
Revenues
Revenues
|
544538000 | |
CY2023Q2 | us-gaap |
Revenues
Revenues
|
574175000 | |
CY2024Q2 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
410057000 | |
CY2023Q2 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
431902000 | |
CY2024Q2 | us-gaap |
Depreciation And Amortization
DepreciationAndAmortization
|
4819000 | |
CY2023Q2 | us-gaap |
Depreciation And Amortization
DepreciationAndAmortization
|
4792000 | |
CY2024Q2 | us-gaap |
Operating Expenses
OperatingExpenses
|
99012000 | |
CY2023Q2 | us-gaap |
Operating Expenses
OperatingExpenses
|
95941000 | |
CY2024Q2 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
35469000 | |
CY2023Q2 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
46332000 | |
CY2024Q2 | us-gaap |
Nonoperating Income Expense
NonoperatingIncomeExpense
|
2073000 | |
CY2023Q2 | us-gaap |
Nonoperating Income Expense
NonoperatingIncomeExpense
|
190000 | |
CY2024Q2 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
37542000 | |
CY2023Q2 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
46522000 | |
CY2023Q2 | us-gaap |
Other Comprehensive Income Loss Foreign Currency Transaction And Translation Adjustment Net Of Tax
OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
|
947000 | |
CY2024Q2 | us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
68000 | |
CY2023Q2 | us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
947000 | |
CY2024Q2 | us-gaap |
Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
|
27407000 | |
CY2023Q2 | us-gaap |
Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
|
34794000 | |
CY2023Q2 | us-gaap |
Treasury Stock Value Acquired Cost Method
TreasuryStockValueAcquiredCostMethod
|
7371000 | |
CY2023Q2 | us-gaap |
Net Income Loss
NetIncomeLoss
|
33847000 | |
CY2023Q2 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Gain Loss Arising During Period Net Of Tax
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax
|
947000 | |
CY2023Q2 | us-gaap |
Stockholders Equity
StockholdersEquity
|
813291000 | |
CY2024Q2 | us-gaap |
Net Income Loss
NetIncomeLoss
|
27339000 | |
CY2023Q2 | us-gaap |
Stock Issued During Period Value Restricted Stock Award Net Of Forfeitures
StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
|
0 | |
CY2023Q2 | us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
2205000 | |
CY2024Q2 | us-gaap |
Gross Profit
GrossProfit
|
134481000 | |
CY2023Q2 | us-gaap |
Gross Profit
GrossProfit
|
142273000 | |
CY2024Q2 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
93608000 | |
CY2024Q2 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
10203000 | |
CY2023Q2 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
12675000 | |
CY2024Q2 | us-gaap |
Net Income Loss
NetIncomeLoss
|
27339000 | |
CY2023Q2 | us-gaap |
Net Income Loss
NetIncomeLoss
|
33847000 | |
CY2024Q2 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.03 | |
CY2023Q2 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.27 | |
CY2024Q2 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.02 | |
CY2023Q2 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.27 | |
CY2024Q2 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
26642000 | |
CY2023Q2 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
26552000 | |
CY2024Q2 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
26801000 | |
CY2023Q2 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
26648000 | |
CY2024Q2 | us-gaap |
Net Income Loss
NetIncomeLoss
|
27339000 | |
CY2023Q2 | us-gaap |
Net Income Loss
NetIncomeLoss
|
33847000 | |
CY2024Q2 | us-gaap |
Other Comprehensive Income Loss Foreign Currency Transaction And Translation Adjustment Net Of Tax
OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
|
68000 | |
CY2024Q1 | us-gaap |
Stockholders Equity
StockholdersEquity
|
901779000 | |
CY2024Q2 | us-gaap |
Stock Issued During Period Value Restricted Stock Award Net Of Forfeitures
StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
|
0 | |
CY2024Q2 | us-gaap |
Stock Issued During Period Value New Issues
StockIssuedDuringPeriodValueNewIssues
|
1811000 | |
CY2024Q2 | us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
2866000 | |
CY2024Q2 | us-gaap |
Treasury Stock Value Acquired Cost Method
TreasuryStockValueAcquiredCostMethod
|
11935000 | |
CY2024Q2 | us-gaap |
Other Comprehensive Income Foreign Currency Transaction And Translation Gain Loss Arising During Period Net Of Tax
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax
|
68000 | |
CY2024Q2 | us-gaap |
Stockholders Equity
StockholdersEquity
|
921928000 | |
CY2023Q1 | us-gaap |
Stockholders Equity
StockholdersEquity
|
782265000 | |
CY2024Q2 | dei |
Amendment Flag
AmendmentFlag
|
false | |
CY2024Q2 | dei |
Current Fiscal Year End Date
CurrentFiscalYearEndDate
|
--03-31 | |
CY2024Q2 | dei |
Document Fiscal Year Focus
DocumentFiscalYearFocus
|
2025 | |
CY2024Q2 | dei |
Document Fiscal Period Focus
DocumentFiscalPeriodFocus
|
Q1 | |
CY2024Q2 | dei |
Entity Central Index Key
EntityCentralIndexKey
|
0001022408 | |
CY2024Q2 | us-gaap |
Revenue Remaining Performance Obligation Expected Timing Of Satisfaction Period1
RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
|
P1Y | |
CY2024Q2 | us-gaap |
Revenue Remaining Performance Obligation Expected Timing Of Satisfaction Period1
RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
|
P9M | |
CY2024Q2 | us-gaap |
Revenue Remaining Performance Obligation Expected Timing Of Satisfaction Period1
RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
|
P1Y | |
CY2024Q2 | us-gaap |
Revenue Remaining Performance Obligation Expected Timing Of Satisfaction Period1
RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
|
||
CY2024Q2 | us-gaap |
Revenue Remaining Performance Obligation Expected Timing Of Satisfaction Period1
RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
|
P1Y | |
CY2024Q2 | dei |
Security Exchange Name
SecurityExchangeName
|
NASDAQ | |
CY2024Q2 | us-gaap |
Interest Expense Operating
InterestExpenseOperating
|
585000 | |
CY2023Q2 | us-gaap |
Interest Expense Operating
InterestExpenseOperating
|
851000 | |
CY2023Q2 | us-gaap |
Stock Issued During Period Value New Issues
StockIssuedDuringPeriodValueNewIssues
|
1398000 | |
CY2024Q2 | us-gaap |
Number Of Operating Segments
NumberOfOperatingSegments
|
4 | |
CY2024Q2 | us-gaap |
Contract With Customer Asset Net
ContractWithCustomerAssetNet
|
46800000 | |
CY2024Q1 | us-gaap |
Contract With Customer Asset Net
ContractWithCustomerAssetNet
|
44600000 | |
CY2024Q2 | plus |
Contract With Customer Liability Current Excluding Deferred Revenue On Operating Leases
ContractWithCustomerLiabilityCurrentExcludingDeferredRevenueOnOperatingLeases
|
138032000 | |
CY2024Q1 | plus |
Contract With Customer Liability Current Excluding Deferred Revenue On Operating Leases
ContractWithCustomerLiabilityCurrentExcludingDeferredRevenueOnOperatingLeases
|
134110000 | |
CY2024Q2 | plus |
Contract With Customer Liability Noncurrent Excluding Deferred Revenue On Operating Leases
ContractWithCustomerLiabilityNoncurrentExcludingDeferredRevenueOnOperatingLeases
|
76896000 | |
CY2024Q1 | plus |
Contract With Customer Liability Noncurrent Excluding Deferred Revenue On Operating Leases
ContractWithCustomerLiabilityNoncurrentExcludingDeferredRevenueOnOperatingLeases
|
68174000 | |
CY2024Q2 | us-gaap |
Contract With Customer Liability Revenue Recognized
ContractWithCustomerLiabilityRevenueRecognized
|
40500000 | |
CY2023Q2 | us-gaap |
Contract With Customer Liability Revenue Recognized
ContractWithCustomerLiabilityRevenueRecognized
|
30900000 | |
CY2024Q2 | us-gaap |
Revenue Remaining Performance Obligation
RevenueRemainingPerformanceObligation
|
68956000 | |
CY2024Q2 | us-gaap |
Revenue Remaining Performance Obligation
RevenueRemainingPerformanceObligation
|
45452000 | |
CY2024Q2 | us-gaap |
Revenue Remaining Performance Obligation
RevenueRemainingPerformanceObligation
|
26529000 | |
CY2024Q2 | us-gaap |
Revenue Remaining Performance Obligation
RevenueRemainingPerformanceObligation
|
10718000 | |
CY2024Q2 | us-gaap |
Revenue Remaining Performance Obligation
RevenueRemainingPerformanceObligation
|
7166000 | |
CY2024Q2 | us-gaap |
Revenue Remaining Performance Obligation
RevenueRemainingPerformanceObligation
|
158821000 | |
CY2024Q2 | us-gaap |
Sales Type Lease Revenue
SalesTypeLeaseRevenue
|
3510000 | |
CY2023Q2 | us-gaap |
Sales Type Lease Revenue
SalesTypeLeaseRevenue
|
7623000 | |
CY2024Q2 | us-gaap |
Cost Of Goods Sold Sales Type Lease
CostOfGoodsSoldSalesTypeLease
|
3059000 | |
CY2023Q2 | us-gaap |
Cost Of Goods Sold Sales Type Lease
CostOfGoodsSoldSalesTypeLease
|
7391000 | |
CY2024Q2 | us-gaap |
Sales Type Lease Selling Profit Loss
SalesTypeLeaseSellingProfitLoss
|
451000 | |
CY2023Q2 | us-gaap |
Sales Type Lease Selling Profit Loss
SalesTypeLeaseSellingProfitLoss
|
232000 | |
CY2024Q2 | us-gaap |
Sales Type Lease Interest Income
SalesTypeLeaseInterestIncome
|
2023000 | |
CY2023Q2 | us-gaap |
Sales Type Lease Interest Income
SalesTypeLeaseInterestIncome
|
1362000 | |
CY2024Q2 | us-gaap |
Operating Lease Lease Income Lease Payments
OperatingLeaseLeaseIncomeLeasePayments
|
2867000 | |
CY2023Q2 | us-gaap |
Operating Lease Lease Income Lease Payments
OperatingLeaseLeaseIncomeLeasePayments
|
2808000 | |
CY2024Q2 | us-gaap |
Direct Financing Lease Unguaranteed Residual Asset
DirectFinancingLeaseUnguaranteedResidualAsset
|
3554000 | |
CY2024Q1 | us-gaap |
Direct Financing Lease Unguaranteed Residual Asset
DirectFinancingLeaseUnguaranteedResidualAsset
|
3718000 | |
CY2024Q2 | us-gaap |
Property Subject To Or Available For Operating Lease Gross
PropertySubjectToOrAvailableForOperatingLeaseGross
|
12370000 | |
CY2024Q1 | us-gaap |
Property Subject To Or Available For Operating Lease Gross
PropertySubjectToOrAvailableForOperatingLeaseGross
|
10744000 | |
CY2024Q2 | us-gaap |
Property Subject To Or Available For Operating Lease Accumulated Depreciation
PropertySubjectToOrAvailableForOperatingLeaseAccumulatedDepreciation
|
7319000 | |
CY2024Q1 | us-gaap |
Property Subject To Or Available For Operating Lease Accumulated Depreciation
PropertySubjectToOrAvailableForOperatingLeaseAccumulatedDepreciation
|
7128000 | |
CY2024Q2 | us-gaap |
Property Subject To Or Available For Operating Lease Net
PropertySubjectToOrAvailableForOperatingLeaseNet
|
5051000 | |
CY2024Q1 | us-gaap |
Property Subject To Or Available For Operating Lease Net
PropertySubjectToOrAvailableForOperatingLeaseNet
|
3616000 | |
CY2024Q2 | plus |
Unguaranteed Estimated Residual Value Of Operating Lease Equipment
UnguaranteedEstimatedResidualValueOfOperatingLeaseEquipment
|
1711000 | |
CY2024Q1 | plus |
Unguaranteed Estimated Residual Value Of Operating Lease Equipment
UnguaranteedEstimatedResidualValueOfOperatingLeaseEquipment
|
1346000 | |
CY2024Q2 | us-gaap |
Gain Loss On Sale Of Loans And Leases
GainLossOnSaleOfLoansAndLeases
|
1300000 | |
CY2023Q2 | us-gaap |
Gain Loss On Sale Of Loans And Leases
GainLossOnSaleOfLoansAndLeases
|
1300000 | |
CY2024Q2 | us-gaap |
Proceeds From Sale Of Finance Receivables
ProceedsFromSaleOfFinanceReceivables
|
47900000 | |
CY2023Q2 | us-gaap |
Proceeds From Sale Of Finance Receivables
ProceedsFromSaleOfFinanceReceivables
|
61400000 | |
CY2024Q2 | us-gaap |
Deferred Revenue
DeferredRevenue
|
300000 | |
CY2024Q1 | us-gaap |
Deferred Revenue
DeferredRevenue
|
400000 | |
CY2024Q2 | us-gaap |
Operating Lease Expense
OperatingLeaseExpense
|
1300000 | |
CY2023Q2 | us-gaap |
Operating Lease Expense
OperatingLeaseExpense
|
1500000 | |
CY2024Q1 | us-gaap |
Goodwill Gross
GoodwillGross
|
161503000 | |
CY2024Q2 | us-gaap |
Goodwill Acquired During Period
GoodwillAcquiredDuringPeriod
|
0 | |
CY2024Q2 | us-gaap |
Goodwill Foreign Currency Translation Gain Loss
GoodwillForeignCurrencyTranslationGainLoss
|
5000 | |
CY2024Q2 | us-gaap |
Goodwill Gross
GoodwillGross
|
161508000 | |
CY2024Q2 | us-gaap |
Goodwill Impaired Accumulated Impairment Loss
GoodwillImpairedAccumulatedImpairmentLoss
|
8673000 | |
CY2024Q2 | plus |
Percentage Change In The Fair Value
PercentageChangeInTheFairValue
|
0.10 | |
CY2024Q2 | us-gaap |
Finite Lived Intangible Assets Gross
FiniteLivedIntangibleAssetsGross
|
130644000 | |
CY2024Q2 | us-gaap |
Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
|
90352000 | |
CY2024Q2 | us-gaap |
Finite Lived Intangible Assets Net
FiniteLivedIntangibleAssetsNet
|
40292000 | |
CY2024Q1 | us-gaap |
Finite Lived Intangible Assets Gross
FiniteLivedIntangibleAssetsGross
|
130996000 | |
CY2024Q1 | us-gaap |
Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
|
86903000 | |
CY2024Q1 | us-gaap |
Finite Lived Intangible Assets Net
FiniteLivedIntangibleAssetsNet
|
44093000 | |
CY2024Q1 | us-gaap |
Financing Receivable Allowance For Credit Losses
FinancingReceivableAllowanceForCreditLosses
|
5178000 | |
CY2024Q2 | us-gaap |
Provision For Loan Losses Expensed
ProvisionForLoanLossesExpensed
|
96000 | |
CY2024Q2 | us-gaap |
Financing Receivable Allowance For Credit Loss Writeoff After Recovery
FinancingReceivableAllowanceForCreditLossWriteoffAfterRecovery
|
13000 | |
CY2024Q2 | us-gaap |
Financing Receivable Allowance For Credit Losses
FinancingReceivableAllowanceForCreditLosses
|
5261000 | |
CY2023Q1 | us-gaap |
Financing Receivable Allowance For Credit Losses
FinancingReceivableAllowanceForCreditLosses
|
4354000 | |
CY2023Q2 | us-gaap |
Provision For Loan Losses Expensed
ProvisionForLoanLossesExpensed
|
478000 | |
CY2023Q2 | us-gaap |
Financing Receivable Allowance For Credit Loss Writeoff After Recovery
FinancingReceivableAllowanceForCreditLossWriteoffAfterRecovery
|
12000 | |
CY2023Q2 | us-gaap |
Financing Receivable Allowance For Credit Losses
FinancingReceivableAllowanceForCreditLosses
|
4820000 | |
CY2024Q2 | us-gaap |
Financing Receivable Originated In Current Fiscal Year
FinancingReceivableOriginatedInCurrentFiscalYear
|
49309000 | |
CY2024Q2 | us-gaap |
Financing Receivable Originated In Fiscal Year Before Latest Fiscal Year
FinancingReceivableOriginatedInFiscalYearBeforeLatestFiscalYear
|
96436000 | |
CY2024Q2 | us-gaap |
Financing Receivable Originated Two Years Before Latest Fiscal Year
FinancingReceivableOriginatedTwoYearsBeforeLatestFiscalYear
|
34308000 | |
CY2024Q2 | us-gaap |
Financing Receivable Originated Three Years Before Latest Fiscal Year
FinancingReceivableOriginatedThreeYearsBeforeLatestFiscalYear
|
4956000 | |
CY2024Q2 | us-gaap |
Financing Receivable Originated Four Years Before Latest Fiscal Year
FinancingReceivableOriginatedFourYearsBeforeLatestFiscalYear
|
2924000 | |
CY2024Q2 | us-gaap |
Financing Receivable Originated Five Or More Years Before Latest Fiscal Year
FinancingReceivableOriginatedFiveOrMoreYearsBeforeLatestFiscalYear
|
110000 | |
CY2024Q2 | us-gaap |
Notes Receivable Gross
NotesReceivableGross
|
188043000 | |
CY2024Q2 | plus |
Financing Receivable Transfers
FinancingReceivableTransfers
|
37356000 | |
CY2024Q2 | plus |
Finance Receivable Net Credit Exposure
FinanceReceivableNetCreditExposure
|
150687000 | |
CY2024Q2 | plus |
Net Investment In Direct Financing And Sale Type Leases Unguaranteed Residual Values Of Leased Property
NetInvestmentInDirectFinancingAndSaleTypeLeasesUnguaranteedResidualValuesOfLeasedProperty
|
3554000 | |
CY2024Q1 | us-gaap |
Financing Receivable Originated In Current Fiscal Year
FinancingReceivableOriginatedInCurrentFiscalYear
|
127633000 | |
CY2024Q1 | us-gaap |
Financing Receivable Originated In Fiscal Year Before Latest Fiscal Year
FinancingReceivableOriginatedInFiscalYearBeforeLatestFiscalYear
|
38086000 | |
CY2024Q1 | us-gaap |
Financing Receivable Originated Two Years Before Latest Fiscal Year
FinancingReceivableOriginatedTwoYearsBeforeLatestFiscalYear
|
7216000 | |
CY2024Q1 | us-gaap |
Financing Receivable Originated Three Years Before Latest Fiscal Year
FinancingReceivableOriginatedThreeYearsBeforeLatestFiscalYear
|
4118000 | |
CY2024Q1 | us-gaap |
Financing Receivable Originated Four Years Before Latest Fiscal Year
FinancingReceivableOriginatedFourYearsBeforeLatestFiscalYear
|
132000 | |
CY2024Q1 | us-gaap |
Financing Receivable Originated Five Or More Years Before Latest Fiscal Year
FinancingReceivableOriginatedFiveOrMoreYearsBeforeLatestFiscalYear
|
7000 | |
CY2024Q1 | us-gaap |
Notes Receivable Gross
NotesReceivableGross
|
177192000 | |
CY2024Q1 | plus |
Financing Receivable Transfers
FinancingReceivableTransfers
|
35723000 | |
CY2024Q1 | plus |
Finance Receivable Net Credit Exposure
FinanceReceivableNetCreditExposure
|
141469000 | |
CY2024Q1 | plus |
Net Investment In Direct Financing And Sale Type Leases Unguaranteed Residual Values Of Leased Property
NetInvestmentInDirectFinancingAndSaleTypeLeasesUnguaranteedResidualValuesOfLeasedProperty
|
3718000 | |
CY2024Q2 | us-gaap |
Billed Contract Receivables
BilledContractReceivables
|
17298000 | |
CY2024Q2 | us-gaap |
Unbilled Contracts Receivable
UnbilledContractsReceivable
|
170745000 | |
CY2024Q2 | us-gaap |
Notes Receivable Gross
NotesReceivableGross
|
188043000 | |
CY2024Q1 | us-gaap |
Billed Contract Receivables
BilledContractReceivables
|
21768000 | |
CY2024Q1 | us-gaap |
Unbilled Contracts Receivable
UnbilledContractsReceivable
|
155424000 | |
CY2024Q1 | us-gaap |
Notes Receivable Gross
NotesReceivableGross
|
177192000 | |
CY2024Q2 | us-gaap |
Net Income Loss
NetIncomeLoss
|
27339000 | |
CY2023Q2 | us-gaap |
Net Income Loss
NetIncomeLoss
|
33847000 | |
CY2024Q2 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
26642000 | |
CY2023Q2 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
26552000 | |
CY2024Q2 | us-gaap |
Weighted Average Number Diluted Shares Outstanding Adjustment
WeightedAverageNumberDilutedSharesOutstandingAdjustment
|
159000 | |
CY2023Q2 | us-gaap |
Weighted Average Number Diluted Shares Outstanding Adjustment
WeightedAverageNumberDilutedSharesOutstandingAdjustment
|
96000 | |
CY2024Q2 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
26801000 | |
CY2023Q2 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
26648000 | |
CY2024Q2 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.03 | |
CY2023Q2 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.27 | |
CY2024Q2 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.02 | |
CY2023Q2 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.27 | |
CY2024Q2 | srt |
Stock Repurchase Program Number Of Shares Authorized To Be Repurchased
StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased
|
1250000 | |
CY2023Q1 | srt |
Stock Repurchase Program Number Of Shares Authorized To Be Repurchased
StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased
|
1000000 | |
CY2024Q2 | us-gaap |
Stock Repurchased During Period Shares
StockRepurchasedDuringPeriodShares
|
109869 | |
CY2024Q2 | us-gaap |
Stock Repurchased During Period Value
StockRepurchasedDuringPeriodValue
|
8100000 | |
CY2024Q2 | us-gaap |
Shares Paid For Tax Withholding For Share Based Compensation
SharesPaidForTaxWithholdingForShareBasedCompensation
|
52450 | |
CY2024Q2 | us-gaap |
Adjustments Related To Tax Withholding For Share Based Compensation
AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
|
3800000 | |
CY2023Q2 | us-gaap |
Stock Repurchased During Period Shares
StockRepurchasedDuringPeriodShares
|
93541 | |
CY2023Q2 | us-gaap |
Stock Repurchased During Period Value
StockRepurchasedDuringPeriodValue
|
4400000 | |
CY2023Q2 | us-gaap |
Shares Paid For Tax Withholding For Share Based Compensation
SharesPaidForTaxWithholdingForShareBasedCompensation
|
53945 | |
CY2023Q2 | us-gaap |
Adjustments Related To Tax Withholding For Share Based Compensation
AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
|
3000000 | |
CY2024Q2 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
2855000 | |
CY2023Q2 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
2205000 | |
CY2024Q2 | us-gaap |
Employee Service Share Based Compensation Tax Benefit From Compensation Expense
EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
|
777000 | |
CY2023Q2 | us-gaap |
Employee Service Share Based Compensation Tax Benefit From Compensation Expense
EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
|
600000 | |
CY2023Q2 | us-gaap |
Defined Contribution Plan Cost Recognized
DefinedContributionPlanCostRecognized
|
1400000 | |
CY2024Q2 | us-gaap |
Defined Contribution Plan Cost Recognized
DefinedContributionPlanCostRecognized
|
1400000 | |
CY2024 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
10200000 | |
CY2023 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
12700000 | |
CY2024Q2 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.272 | |
CY2023Q2 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.272 | |
CY2024Q2 | us-gaap |
Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
|
0.21 | |
CY2023Q2 | us-gaap |
Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
|
0.21 | |
CY2024Q2 | us-gaap |
Money Market Funds At Carrying Value
MoneyMarketFundsAtCarryingValue
|
283187000 | |
CY2024Q1 | us-gaap |
Money Market Funds At Carrying Value
MoneyMarketFundsAtCarryingValue
|
179709000 | |
CY2024Q2 | us-gaap |
Number Of Operating Segments
NumberOfOperatingSegments
|
4 | |
CY2024Q2 | us-gaap |
Revenues
Revenues
|
544538000 | |
CY2023Q2 | us-gaap |
Revenues
Revenues
|
574175000 | |
CY2024Q2 | us-gaap |
Gross Profit
GrossProfit
|
134481000 | |
CY2023Q2 | us-gaap |
Gross Profit
GrossProfit
|
142273000 | |
CY2024Q2 | us-gaap |
Operating Expenses
OperatingExpenses
|
99012000 | |
CY2023Q2 | us-gaap |
Operating Expenses
OperatingExpenses
|
95941000 | |
CY2024Q2 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
35469000 | |
CY2023Q2 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
46332000 | |
CY2024Q2 | us-gaap |
Nonoperating Income Expense
NonoperatingIncomeExpense
|
2073000 | |
CY2023Q2 | us-gaap |
Nonoperating Income Expense
NonoperatingIncomeExpense
|
190000 | |
CY2024Q2 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
37542000 | |
CY2023Q2 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
46522000 | |
CY2024Q2 | us-gaap |
Depreciation And Amortization
DepreciationAndAmortization
|
4819000 | |
CY2023Q2 | us-gaap |
Depreciation And Amortization
DepreciationAndAmortization
|
4792000 | |
CY2024Q2 | us-gaap |
Interest Expense Operating
InterestExpenseOperating
|
585000 | |
CY2023Q2 | us-gaap |
Interest Expense Operating
InterestExpenseOperating
|
851000 | |
CY2024Q2 | plus |
Purchases Of Property Equipment And Operating Lease Equipment And Assets To Be Leased Or Financed
PurchasesOfPropertyEquipmentAndOperatingLeaseEquipmentAndAssetsToBeLeasedOrFinanced
|
1967000 | |
CY2023Q2 | plus |
Purchases Of Property Equipment And Operating Lease Equipment And Assets To Be Leased Or Financed
PurchasesOfPropertyEquipmentAndOperatingLeaseEquipmentAndAssetsToBeLeasedOrFinanced
|
3698000 | |
CY2024Q2 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
533096000 | |
CY2024Q2 | plus |
Financing And Other
FinancingAndOther
|
11442000 | |
CY2024Q2 | us-gaap |
Revenues
Revenues
|
544538000 | |
CY2024Q2 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
533096000 | |
CY2023Q2 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
559352000 | |
CY2023Q2 | plus |
Financing And Other
FinancingAndOther
|
14823000 | |
CY2023Q2 | us-gaap |
Revenues
Revenues
|
574175000 | |
CY2023Q2 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
559352000 | |
CY2024Q2 | ecd |
Non Rule10b51 Arr Adopted Flag
NonRule10b51ArrAdoptedFlag
|
false | |
CY2024Q2 | ecd |
Rule10b51 Arr Adopted Flag
Rule10b51ArrAdoptedFlag
|
false | |
CY2024Q2 | ecd |
Non Rule10b51 Arr Trmntd Flag
NonRule10b51ArrTrmntdFlag
|
false | |
CY2024Q2 | ecd |
Rule10b51 Arr Trmntd Flag
Rule10b51ArrTrmntdFlag
|
false |