10-K Filing
Filing Information
| Form Type | 10-K |
| Accession Number | 0001421517-25-000048 |
| Period End Date | 20241231 |
| Filing Date | 20250226 |
| Fiscal Year | 2024 |
| Fiscal Period | FY |
| XBRL Instance | erii-20241231_htm.xml |
Filing Contents
This filing contains the following financial statements:
Balance Sheet
166 line items
| Line Item | Tag | Value | Unit | Period |
|---|---|---|---|---|
| Preferred stock, par value (in dollars per share) |
PreferredStockParOrStatedValuePerShare
|
$0.00 | USD | Point-in-time |
| Preferred stock, par value (in dollars per share) |
PreferredStockParOrStatedValuePerShare
|
$0.00 | USD | Point-in-time |
| Preferred stock, par value (in dollars per share) |
PreferredStockParOrStatedValuePerShare
|
$0.00 | USD | Point-in-time |
| Preferred stock, par value (in dollars per share) |
PreferredStockParOrStatedValuePerShare
|
$0.00 | USD | Point-in-time |
| Preferred stock, shares authorized (in shares) |
PreferredStockSharesAuthorized
|
10.00M | shares | Point-in-time |
| Preferred stock, shares authorized (in shares) |
PreferredStockSharesAuthorized
|
10.00M | shares | Point-in-time |
| Preferred stock, shares authorized (in shares) |
PreferredStockSharesAuthorized
|
10.00M | shares | Point-in-time |
| Preferred stock, shares authorized (in shares) |
PreferredStockSharesAuthorized
|
10.00M | shares | Point-in-time |
| Preferred stock, shares issued (in shares) |
PreferredStockSharesIssued
|
0.00 | shares | Point-in-time |
| Preferred stock, shares issued (in shares) |
PreferredStockSharesIssued
|
0.00 | shares | Point-in-time |
| Preferred stock, shares issued (in shares) |
PreferredStockSharesIssued
|
0.00 | shares | Point-in-time |
| Preferred stock, shares issued (in shares) |
PreferredStockSharesIssued
|
0.00 | shares | Point-in-time |
| Cash and cash equivalents |
CashAndCashEquivalentsAtCarryingValue
|
$68.10M | USD | Point-in-time |
| Cash and cash equivalents |
CashAndCashEquivalentsAtCarryingValue
|
$68.10M | USD | Point-in-time |
| Cash and cash equivalents |
CashAndCashEquivalentsAtCarryingValue
|
$56.35M | USD | Point-in-time |
| Cash and cash equivalents |
CashAndCashEquivalentsAtCarryingValue
|
$56.35M | USD | Point-in-time |
| Cash and cash equivalents |
CashAndCashEquivalentsAtCarryingValue
|
$29.63M | USD | Point-in-time |
| Cash and cash equivalents |
CashAndCashEquivalentsAtCarryingValue
|
$29.63M | USD | Point-in-time |
| Short-term investments |
ShortTermInvestments
|
$48.39M | USD | Point-in-time |
| Short-term investments |
ShortTermInvestments
|
$48.39M | USD | Point-in-time |
| Short-term investments |
ShortTermInvestments
|
$40.45M | USD | Point-in-time |
| Short-term investments |
ShortTermInvestments
|
$40.45M | USD | Point-in-time |
| Preferred stock, shares outstanding (in shares) |
PreferredStockSharesOutstanding
|
0.00 | shares | Point-in-time |
| Preferred stock, shares outstanding (in shares) |
PreferredStockSharesOutstanding
|
0.00 | shares | Point-in-time |
| Preferred stock, shares outstanding (in shares) |
PreferredStockSharesOutstanding
|
0.00 | shares | Point-in-time |
| Preferred stock, shares outstanding (in shares) |
PreferredStockSharesOutstanding
|
0.00 | shares | Point-in-time |
| Accounts receivable, net |
AccountsReceivableNetCurrent
|
$46.94M | USD | Point-in-time |
| Accounts receivable, net |
AccountsReceivableNetCurrent
|
$46.94M | USD | Point-in-time |
| Common stock, par value (in dollars per share) |
CommonStockParOrStatedValuePerShare
|
$0.00 | USD | Point-in-time |
| Common stock, par value (in dollars per share) |
CommonStockParOrStatedValuePerShare
|
$0.00 | USD | Point-in-time |
| Accounts receivable, net |
AccountsReceivableNetCurrent
|
$64.07M | USD | Point-in-time |
| Accounts receivable, net |
AccountsReceivableNetCurrent
|
$64.07M | USD | Point-in-time |
| Common stock, par value (in dollars per share) |
CommonStockParOrStatedValuePerShare
|
$0.00 | USD | Point-in-time |
| Common stock, par value (in dollars per share) |
CommonStockParOrStatedValuePerShare
|
$0.00 | USD | Point-in-time |
| Common stock, shares authorized (in shares) |
CommonStockSharesAuthorized
|
200.00M | shares | Point-in-time |
| Common stock, shares authorized (in shares) |
CommonStockSharesAuthorized
|
200.00M | shares | Point-in-time |
| Inventories, net |
InventoryNet
|
$26.15M | USD | Point-in-time |
| Inventories, net |
InventoryNet
|
$26.15M | USD | Point-in-time |
| Common stock, shares authorized (in shares) |
CommonStockSharesAuthorized
|
200.00M | shares | Point-in-time |
| Common stock, shares authorized (in shares) |
CommonStockSharesAuthorized
|
200.00M | shares | Point-in-time |
| Inventories, net |
InventoryNet
|
$24.91M | USD | Point-in-time |
| Inventories, net |
InventoryNet
|
$24.91M | USD | Point-in-time |
| Common stock, shares issued (in shares) |
CommonStockSharesIssued
|
66.18M | shares | Point-in-time |
| Common stock, shares issued (in shares) |
CommonStockSharesIssued
|
66.18M | shares | Point-in-time |
| Prepaid expenses and other assets |
PrepaidExpenseAndOtherAssetsCurrent
|
$3.84M | USD | Point-in-time |
| Prepaid expenses and other assets |
PrepaidExpenseAndOtherAssetsCurrent
|
$3.84M | USD | Point-in-time |
| Prepaid expenses and other assets |
PrepaidExpenseAndOtherAssetsCurrent
|
$6.67M | USD | Point-in-time |
| Prepaid expenses and other assets |
PrepaidExpenseAndOtherAssetsCurrent
|
$6.67M | USD | Point-in-time |
| Common stock, shares issued (in shares) |
CommonStockSharesIssued
|
65.03M | shares | Point-in-time |
| Common stock, shares issued (in shares) |
CommonStockSharesIssued
|
65.03M | shares | Point-in-time |
| Common stock, shares outstanding (in shares) |
CommonStockSharesOutstanding
|
56.88M | shares | Point-in-time |
| Common stock, shares outstanding (in shares) |
CommonStockSharesOutstanding
|
56.88M | shares | Point-in-time |
| Common stock, shares outstanding (in shares) |
CommonStockSharesOutstanding
|
56.08M | shares | Point-in-time |
| Common stock, shares outstanding (in shares) |
CommonStockSharesOutstanding
|
56.08M | shares | Point-in-time |
| Total current assets |
AssetsCurrent
|
$173.66M | USD | Point-in-time |
| Total current assets |
AssetsCurrent
|
$173.66M | USD | Point-in-time |
| Total current assets |
AssetsCurrent
|
$185.47M | USD | Point-in-time |
| Total current assets |
AssetsCurrent
|
$185.47M | USD | Point-in-time |
| Common stock, shares outstanding (in shares) |
CommonStockSharesOutstanding
|
54.79M | shares | Point-in-time |
| Common stock, shares outstanding (in shares) |
CommonStockSharesOutstanding
|
54.79M | shares | Point-in-time |
| Long-term investments |
LongTermInvestments
|
$21.83M | USD | Point-in-time |
| Long-term investments |
LongTermInvestments
|
$21.83M | USD | Point-in-time |
| Treasury stock, at cost (in shares) |
TreasuryStockCommonShares
|
8.15M | shares | Point-in-time |
| Treasury stock, at cost (in shares) |
TreasuryStockCommonShares
|
8.15M | shares | Point-in-time |
| Long-term investments |
LongTermInvestments
|
$13.83M | USD | Point-in-time |
| Long-term investments |
LongTermInvestments
|
$13.83M | USD | Point-in-time |
| Treasury stock, at cost (in shares) |
TreasuryStockCommonShares
|
11.40M | shares | Point-in-time |
| Treasury stock, at cost (in shares) |
TreasuryStockCommonShares
|
11.40M | shares | Point-in-time |
| Deferred tax assets, net |
DeferredIncomeTaxAssetsNet
|
$10.32M | USD | Point-in-time |
| Deferred tax assets, net |
DeferredIncomeTaxAssetsNet
|
$10.32M | USD | Point-in-time |
| Deferred tax assets, net |
DeferredIncomeTaxAssetsNet
|
$9.00M | USD | Point-in-time |
| Deferred tax assets, net |
DeferredIncomeTaxAssetsNet
|
$9.00M | USD | Point-in-time |
| Property and equipment, net |
PropertyPlantAndEquipmentNet
|
$15.42M | USD | Point-in-time |
| Property and equipment, net |
PropertyPlantAndEquipmentNet
|
$15.42M | USD | Point-in-time |
| Property and equipment, net |
PropertyPlantAndEquipmentNet
|
$18.70M | USD | Point-in-time |
| Property and equipment, net |
PropertyPlantAndEquipmentNet
|
$18.70M | USD | Point-in-time |
| Operating lease, right of use asset |
OperatingLeaseRightOfUseAsset
|
$9.70M | USD | Point-in-time |
| Operating lease, right of use asset |
OperatingLeaseRightOfUseAsset
|
$9.70M | USD | Point-in-time |
| Operating lease, right of use asset |
OperatingLeaseRightOfUseAsset
|
$11.47M | USD | Point-in-time |
| Operating lease, right of use asset |
OperatingLeaseRightOfUseAsset
|
$11.47M | USD | Point-in-time |
| Goodwill |
Goodwill
|
$12.79M | USD | Point-in-time |
| Goodwill |
Goodwill
|
$12.79M | USD | Point-in-time |
| Goodwill |
Goodwill
|
$12.79M | USD | Point-in-time |
| Goodwill |
Goodwill
|
$12.79M | USD | Point-in-time |
| Other assets, non-current |
OtherAssetsNoncurrent
|
$388.00K | USD | Point-in-time |
| Other assets, non-current |
OtherAssetsNoncurrent
|
$388.00K | USD | Point-in-time |
| Other assets, non-current |
OtherAssetsNoncurrent
|
$391.00K | USD | Point-in-time |
| Other assets, non-current |
OtherAssetsNoncurrent
|
$391.00K | USD | Point-in-time |
| Total assets |
Assets
|
$252.97M | USD | Point-in-time |
| Total assets |
Assets
|
$252.97M | USD | Point-in-time |
| Total assets |
Assets
|
$242.79M | USD | Point-in-time |
| Total assets |
Assets
|
$242.79M | USD | Point-in-time |
| Accounts payable |
AccountsPayableCurrent
|
$3.11M | USD | Point-in-time |
| Accounts payable |
AccountsPayableCurrent
|
$3.11M | USD | Point-in-time |
| Accounts payable |
AccountsPayableCurrent
|
$3.00M | USD | Point-in-time |
| Accounts payable |
AccountsPayableCurrent
|
$3.00M | USD | Point-in-time |
| Accrued expenses and other liabilities |
AccruedExpensesAndOtherCurrentLiabilities
|
$17.73M | USD | Point-in-time |
| Accrued expenses and other liabilities |
AccruedExpensesAndOtherCurrentLiabilities
|
$17.73M | USD | Point-in-time |
| Accrued expenses and other liabilities |
AccruedExpensesAndOtherCurrentLiabilities
|
$15.58M | USD | Point-in-time |
| Accrued expenses and other liabilities |
AccruedExpensesAndOtherCurrentLiabilities
|
$15.58M | USD | Point-in-time |
| Lease liabilities |
OperatingLeaseLiabilityCurrent
|
$2.02M | USD | Point-in-time |
| Lease liabilities |
OperatingLeaseLiabilityCurrent
|
$2.02M | USD | Point-in-time |
| Lease liabilities |
OperatingLeaseLiabilityCurrent
|
$1.79M | USD | Point-in-time |
| Lease liabilities |
OperatingLeaseLiabilityCurrent
|
$1.79M | USD | Point-in-time |
| Contract liabilities |
ContractWithCustomerLiabilityCurrent
|
$1.10M | USD | Point-in-time |
| Contract liabilities |
ContractWithCustomerLiabilityCurrent
|
$1.10M | USD | Point-in-time |
| Contract liabilities |
ContractWithCustomerLiabilityCurrent
|
$571.00K | USD | Point-in-time |
| Contract liabilities |
ContractWithCustomerLiabilityCurrent
|
$571.00K | USD | Point-in-time |
| Total current liabilities |
LiabilitiesCurrent
|
$21.47M | USD | Point-in-time |
| Total current liabilities |
LiabilitiesCurrent
|
$21.47M | USD | Point-in-time |
| Total current liabilities |
LiabilitiesCurrent
|
$23.43M | USD | Point-in-time |
| Total current liabilities |
LiabilitiesCurrent
|
$23.43M | USD | Point-in-time |
| Lease liabilities, non-current |
OperatingLeaseLiabilityNoncurrent
|
$11.49M | USD | Point-in-time |
| Lease liabilities, non-current |
OperatingLeaseLiabilityNoncurrent
|
$11.49M | USD | Point-in-time |
| Lease liabilities, non-current |
OperatingLeaseLiabilityNoncurrent
|
$9.30M | USD | Point-in-time |
| Lease liabilities, non-current |
OperatingLeaseLiabilityNoncurrent
|
$9.30M | USD | Point-in-time |
| Other liabilities, non-current |
OtherLiabilitiesNoncurrent
|
$207.00K | USD | Point-in-time |
| Other liabilities, non-current |
OtherLiabilitiesNoncurrent
|
$207.00K | USD | Point-in-time |
| Other liabilities, non-current |
OtherLiabilitiesNoncurrent
|
$57.00K | USD | Point-in-time |
| Other liabilities, non-current |
OtherLiabilitiesNoncurrent
|
$57.00K | USD | Point-in-time |
| Total liabilities |
Liabilities
|
$33.17M | USD | Point-in-time |
| Total liabilities |
Liabilities
|
$33.17M | USD | Point-in-time |
| Total liabilities |
Liabilities
|
$32.78M | USD | Point-in-time |
| Total liabilities |
Liabilities
|
$32.78M | USD | Point-in-time |
| Commitments and contingencies (Note 7) |
CommitmentsAndContingencies
|
- | USD | Point-in-time |
| Commitments and contingencies (Note 7) |
CommitmentsAndContingencies
|
- | USD | Point-in-time |
| Commitments and contingencies (Note 7) |
CommitmentsAndContingencies
|
- | USD | Point-in-time |
| Commitments and contingencies (Note 7) |
CommitmentsAndContingencies
|
- | USD | Point-in-time |
| Preferred stock, $0.001 par value; 10,000,000 shares authorized; no shares issued or outstanding at December 31, 2024 and 2023 |
PreferredStockValue
|
- | USD | Point-in-time |
| Preferred stock, $0.001 par value; 10,000,000 shares authorized; no shares issued or outstanding at December 31, 2024 and 2023 |
PreferredStockValue
|
- | USD | Point-in-time |
| Preferred stock, $0.001 par value; 10,000,000 shares authorized; no shares issued or outstanding at December 31, 2024 and 2023 |
PreferredStockValue
|
- | USD | Point-in-time |
| Preferred stock, $0.001 par value; 10,000,000 shares authorized; no shares issued or outstanding at December 31, 2024 and 2023 |
PreferredStockValue
|
- | USD | Point-in-time |
| Common stock, $0.001 par value; 200,000,000 shares authorized; 66,182,906 shares issued and 54,785,861 shares outstanding at December 31, 2024 and 65,029,459 shares issued and 56,880,947 shares outstanding at December 31, 2023 |
CommonStockValue
|
$66.00K | USD | Point-in-time |
| Common stock, $0.001 par value; 200,000,000 shares authorized; 66,182,906 shares issued and 54,785,861 shares outstanding at December 31, 2024 and 65,029,459 shares issued and 56,880,947 shares outstanding at December 31, 2023 |
CommonStockValue
|
$66.00K | USD | Point-in-time |
| Common stock, $0.001 par value; 200,000,000 shares authorized; 66,182,906 shares issued and 54,785,861 shares outstanding at December 31, 2024 and 65,029,459 shares issued and 56,880,947 shares outstanding at December 31, 2023 |
CommonStockValue
|
$65.00K | USD | Point-in-time |
| Common stock, $0.001 par value; 200,000,000 shares authorized; 66,182,906 shares issued and 54,785,861 shares outstanding at December 31, 2024 and 65,029,459 shares issued and 56,880,947 shares outstanding at December 31, 2023 |
CommonStockValue
|
$65.00K | USD | Point-in-time |
| Additional paid-in capital |
AdditionalPaidInCapital
|
$217.62M | USD | Point-in-time |
| Additional paid-in capital |
AdditionalPaidInCapital
|
$217.62M | USD | Point-in-time |
| Additional paid-in capital |
AdditionalPaidInCapital
|
$235.01M | USD | Point-in-time |
| Additional paid-in capital |
AdditionalPaidInCapital
|
$235.01M | USD | Point-in-time |
| Accumulated other comprehensive income (loss) |
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
$98.00K | USD | Point-in-time |
| Accumulated other comprehensive income (loss) |
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
$98.00K | USD | Point-in-time |
| Accumulated other comprehensive income (loss) |
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
$-44.00K | USD | Point-in-time |
| Accumulated other comprehensive income (loss) |
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
$-44.00K | USD | Point-in-time |
| Treasury stock, at cost, 11,397,045 shares repurchased at December 31, 2024 and 8,148,512 shares repurchased at December 31, 2023 |
TreasuryStockCommonValue
|
$130.87M | USD | Point-in-time |
| Treasury stock, at cost, 11,397,045 shares repurchased at December 31, 2024 and 8,148,512 shares repurchased at December 31, 2023 |
TreasuryStockCommonValue
|
$130.87M | USD | Point-in-time |
| Treasury stock, at cost, 11,397,045 shares repurchased at December 31, 2024 and 8,148,512 shares repurchased at December 31, 2023 |
TreasuryStockCommonValue
|
$80.49M | USD | Point-in-time |
| Treasury stock, at cost, 11,397,045 shares repurchased at December 31, 2024 and 8,148,512 shares repurchased at December 31, 2023 |
TreasuryStockCommonValue
|
$80.49M | USD | Point-in-time |
| Retained earnings |
RetainedEarningsAccumulatedDeficit
|
$105.71M | USD | Point-in-time |
| Retained earnings |
RetainedEarningsAccumulatedDeficit
|
$105.71M | USD | Point-in-time |
| Retained earnings |
RetainedEarningsAccumulatedDeficit
|
$82.66M | USD | Point-in-time |
| Retained earnings |
RetainedEarningsAccumulatedDeficit
|
$82.66M | USD | Point-in-time |
| Total stockholders equity |
StockholdersEquity
|
$210.01M | USD | Point-in-time |
| Total stockholders equity |
StockholdersEquity
|
$210.01M | USD | Point-in-time |
| Total stockholders equity |
StockholdersEquity
|
$219.81M | USD | Point-in-time |
| Total stockholders equity |
StockholdersEquity
|
$219.81M | USD | Point-in-time |
| Total stockholders equity |
StockholdersEquity
|
$185.34M | USD | Point-in-time |
| Total stockholders equity |
StockholdersEquity
|
$185.34M | USD | Point-in-time |
| Total liabilities and stockholders equity |
LiabilitiesAndStockholdersEquity
|
$242.79M | USD | Point-in-time |
| Total liabilities and stockholders equity |
LiabilitiesAndStockholdersEquity
|
$242.79M | USD | Point-in-time |
| Total liabilities and stockholders equity |
LiabilitiesAndStockholdersEquity
|
$252.97M | USD | Point-in-time |
| Total liabilities and stockholders equity |
LiabilitiesAndStockholdersEquity
|
$252.97M | USD | Point-in-time |
| Shares repurchased |
TreasuryStockCommonShares
|
8.15M | shares | Point-in-time |
| Shares repurchased |
TreasuryStockCommonShares
|
8.15M | shares | Point-in-time |
| Shares repurchased |
TreasuryStockCommonShares
|
11.40M | shares | Point-in-time |
| Shares repurchased |
TreasuryStockCommonShares
|
11.40M | shares | Point-in-time |
Income Statement
116 line items
| Line Item | Tag | Value | Unit | Period |
|---|---|---|---|---|
| Revenue |
RevenueFromContractWithCustomerExcludingAssessedTax
|
$144.95M | USD | Annual |
| Revenue |
RevenueFromContractWithCustomerExcludingAssessedTax
|
$144.95M | USD | Annual |
| Revenue |
RevenueFromContractWithCustomerExcludingAssessedTax
|
$125.59M | USD | Annual |
| Revenue |
RevenueFromContractWithCustomerExcludingAssessedTax
|
$125.59M | USD | Annual |
| Revenue |
RevenueFromContractWithCustomerExcludingAssessedTax
|
$128.35M | USD | Annual |
| Revenue |
RevenueFromContractWithCustomerExcludingAssessedTax
|
$128.35M | USD | Annual |
| Cost of revenue |
CostOfRevenue
|
$38.23M | USD | Annual |
| Cost of revenue |
CostOfRevenue
|
$38.23M | USD | Annual |
| Cost of revenue |
CostOfRevenue
|
$48.02M | USD | Annual |
| Cost of revenue |
CostOfRevenue
|
$48.02M | USD | Annual |
| Cost of revenue |
CostOfRevenue
|
$41.27M | USD | Annual |
| Cost of revenue |
CostOfRevenue
|
$41.27M | USD | Annual |
| Gross profit |
GrossProfit
|
$87.08M | USD | Annual |
| Gross profit |
GrossProfit
|
$87.08M | USD | Annual |
| Gross profit |
GrossProfit
|
$96.93M | USD | Annual |
| Gross profit |
GrossProfit
|
$96.93M | USD | Annual |
| Gross profit |
GrossProfit
|
$87.36M | USD | Annual |
| Gross profit |
GrossProfit
|
$87.36M | USD | Annual |
| General and administrative |
GeneralAndAdministrativeExpense
|
$28.34M | USD | Annual |
| General and administrative |
GeneralAndAdministrativeExpense
|
$28.34M | USD | Annual |
| General and administrative |
GeneralAndAdministrativeExpense
|
$33.07M | USD | Annual |
| General and administrative |
GeneralAndAdministrativeExpense
|
$33.07M | USD | Annual |
| General and administrative |
GeneralAndAdministrativeExpense
|
$28.86M | USD | Annual |
| General and administrative |
GeneralAndAdministrativeExpense
|
$28.86M | USD | Annual |
| Sales and marketing |
SellingAndMarketingExpense
|
$25.42M | USD | Annual |
| Sales and marketing |
SellingAndMarketingExpense
|
$25.42M | USD | Annual |
| Sales and marketing |
SellingAndMarketingExpense
|
$22.16M | USD | Annual |
| Sales and marketing |
SellingAndMarketingExpense
|
$22.16M | USD | Annual |
| Sales and marketing |
SellingAndMarketingExpense
|
$16.28M | USD | Annual |
| Sales and marketing |
SellingAndMarketingExpense
|
$16.28M | USD | Annual |
| Research and development |
ResearchAndDevelopmentExpense
|
$16.24M | USD | Annual |
| Research and development |
ResearchAndDevelopmentExpense
|
$16.24M | USD | Annual |
| Research and development |
ResearchAndDevelopmentExpense
|
$17.91M | USD | Annual |
| Research and development |
ResearchAndDevelopmentExpense
|
$17.91M | USD | Annual |
| Research and development |
ResearchAndDevelopmentExpense
|
$17.00M | USD | Annual |
| Research and development |
ResearchAndDevelopmentExpense
|
$17.00M | USD | Annual |
| Restructuring charges |
RestructuringCharges
|
- | USD | Annual |
| Restructuring charges |
RestructuringCharges
|
- | USD | Annual |
| Restructuring charges |
RestructuringCharges
|
- | USD | Annual |
| Restructuring charges |
RestructuringCharges
|
- | USD | Annual |
| Restructuring charges |
RestructuringCharges
|
$2.48M | USD | Annual |
| Restructuring charges |
RestructuringCharges
|
$2.48M | USD | Annual |
| Restructuring charges |
RestructuringCharges
|
$3.00M | USD | 1 Quarter |
| Restructuring charges |
RestructuringCharges
|
$3.00M | USD | 1 Quarter |
| Total operating expenses |
OperatingExpenses
|
$77.21M | USD | Annual |
| Total operating expenses |
OperatingExpenses
|
$77.21M | USD | Annual |
| Total operating expenses |
OperatingExpenses
|
$62.53M | USD | Annual |
| Total operating expenses |
OperatingExpenses
|
$62.53M | USD | Annual |
| Total operating expenses |
OperatingExpenses
|
$68.03M | USD | Annual |
| Total operating expenses |
OperatingExpenses
|
$68.03M | USD | Annual |
| Income from operations |
OperatingIncomeLoss
|
$24.83M | USD | Annual |
| Income from operations |
OperatingIncomeLoss
|
$24.83M | USD | Annual |
| Income from operations |
OperatingIncomeLoss
|
$19.72M | USD | Annual |
| Income from operations |
OperatingIncomeLoss
|
$19.72M | USD | Annual |
| Income from operations |
OperatingIncomeLoss
|
$19.05M | USD | Annual |
| Income from operations |
OperatingIncomeLoss
|
$19.05M | USD | Annual |
| Interest income |
InterestIncomeSecuritiesTaxable
|
$3.76M | USD | Annual |
| Interest income |
InterestIncomeSecuritiesTaxable
|
$3.76M | USD | Annual |
| Interest income |
InterestIncomeSecuritiesTaxable
|
$908.00K | USD | Annual |
| Interest income |
InterestIncomeSecuritiesTaxable
|
$908.00K | USD | Annual |
| Interest income |
InterestIncomeSecuritiesTaxable
|
$6.22M | USD | Annual |
| Interest income |
InterestIncomeSecuritiesTaxable
|
$6.22M | USD | Annual |
| Other non-operating income (expense), net |
OtherNonoperatingIncomeExpense
|
$-207.00K | USD | Annual |
| Other non-operating income (expense), net |
OtherNonoperatingIncomeExpense
|
$-207.00K | USD | Annual |
| Other non-operating income (expense), net |
OtherNonoperatingIncomeExpense
|
$-101.00K | USD | Annual |
| Other non-operating income (expense), net |
OtherNonoperatingIncomeExpense
|
$-101.00K | USD | Annual |
| Other non-operating income (expense), net |
OtherNonoperatingIncomeExpense
|
$334.00K | USD | Annual |
| Other non-operating income (expense), net |
OtherNonoperatingIncomeExpense
|
$334.00K | USD | Annual |
| Total other income, net |
NonoperatingIncomeExpense
|
$3.65M | USD | Annual |
| Total other income, net |
NonoperatingIncomeExpense
|
$3.65M | USD | Annual |
| Total other income, net |
NonoperatingIncomeExpense
|
$1.24M | USD | Annual |
| Total other income, net |
NonoperatingIncomeExpense
|
$1.24M | USD | Annual |
| Total other income, net |
NonoperatingIncomeExpense
|
$6.01M | USD | Annual |
| Total other income, net |
NonoperatingIncomeExpense
|
$6.01M | USD | Annual |
| Income before income taxes |
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
$26.07M | USD | Annual |
| Income before income taxes |
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
$26.07M | USD | Annual |
| Income before income taxes |
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
$25.73M | USD | Annual |
| Income before income taxes |
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
$25.73M | USD | Annual |
| Income before income taxes |
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
$22.70M | USD | Annual |
| Income before income taxes |
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
$22.70M | USD | Annual |
| Provision for income taxes |
IncomeTaxExpenseBenefit
|
$2.69M | USD | Annual |
| Provision for income taxes |
IncomeTaxExpenseBenefit
|
$2.69M | USD | Annual |
| Provision for income taxes |
IncomeTaxExpenseBenefit
|
$1.20M | USD | Annual |
| Provision for income taxes |
IncomeTaxExpenseBenefit
|
$1.20M | USD | Annual |
| Provision for income taxes |
IncomeTaxExpenseBenefit
|
$2.02M | USD | Annual |
| Provision for income taxes |
IncomeTaxExpenseBenefit
|
$2.02M | USD | Annual |
| Net income |
NetIncomeLoss
|
$21.50M | USD | Annual |
| Net income |
NetIncomeLoss
|
$21.50M | USD | Annual |
| Net income |
NetIncomeLoss
|
$24.05M | USD | Annual |
| Net income |
NetIncomeLoss
|
$24.05M | USD | Annual |
| Net income |
NetIncomeLoss
|
$23.05M | USD | Annual |
| Net income |
NetIncomeLoss
|
$23.05M | USD | Annual |
| Basic (in dollars per share) |
EarningsPerShareBasic
|
$0.38 | USD | Annual |
| Basic (in dollars per share) |
EarningsPerShareBasic
|
$0.38 | USD | Annual |
| Basic (in dollars per share) |
EarningsPerShareBasic
|
$0.43 | USD | Annual |
| Basic (in dollars per share) |
EarningsPerShareBasic
|
$0.43 | USD | Annual |
| Basic (in dollars per share) |
EarningsPerShareBasic
|
$0.40 | USD | Annual |
| Basic (in dollars per share) |
EarningsPerShareBasic
|
$0.40 | USD | Annual |
| Diluted (in dollars per share) |
EarningsPerShareDiluted
|
$0.40 | USD | Annual |
| Diluted (in dollars per share) |
EarningsPerShareDiluted
|
$0.40 | USD | Annual |
| Diluted (in dollars per share) |
EarningsPerShareDiluted
|
$0.37 | USD | Annual |
| Diluted (in dollars per share) |
EarningsPerShareDiluted
|
$0.37 | USD | Annual |
| Diluted (in dollars per share) |
EarningsPerShareDiluted
|
$0.42 | USD | Annual |
| Diluted (in dollars per share) |
EarningsPerShareDiluted
|
$0.42 | USD | Annual |
| Basic (in shares) |
WeightedAverageNumberOfSharesOutstandingBasic
|
56.44M | shares | Annual |
| Basic (in shares) |
WeightedAverageNumberOfSharesOutstandingBasic
|
56.44M | shares | Annual |
| Basic (in shares) |
WeightedAverageNumberOfSharesOutstandingBasic
|
56.22M | shares | Annual |
| Basic (in shares) |
WeightedAverageNumberOfSharesOutstandingBasic
|
56.22M | shares | Annual |
| Basic (in shares) |
WeightedAverageNumberOfSharesOutstandingBasic
|
57.21M | shares | Annual |
| Basic (in shares) |
WeightedAverageNumberOfSharesOutstandingBasic
|
57.21M | shares | Annual |
| Diluted (in shares) |
WeightedAverageNumberOfDilutedSharesOutstanding
|
57.64M | shares | Annual |
| Diluted (in shares) |
WeightedAverageNumberOfDilutedSharesOutstanding
|
57.64M | shares | Annual |
| Diluted (in shares) |
WeightedAverageNumberOfDilutedSharesOutstanding
|
57.74M | shares | Annual |
| Diluted (in shares) |
WeightedAverageNumberOfDilutedSharesOutstanding
|
57.74M | shares | Annual |
| Diluted (in shares) |
WeightedAverageNumberOfDilutedSharesOutstanding
|
57.82M | shares | Annual |
| Diluted (in shares) |
WeightedAverageNumberOfDilutedSharesOutstanding
|
57.82M | shares | Annual |
Cash Flow Statement
196 line items
| Line Item | Tag | Value | Unit | Period |
|---|---|---|---|---|
| Net income |
NetIncomeLoss
|
$21.50M | USD | Annual |
| Net income |
NetIncomeLoss
|
$21.50M | USD | Annual |
| Net income |
NetIncomeLoss
|
$24.05M | USD | Annual |
| Net income |
NetIncomeLoss
|
$24.05M | USD | Annual |
| Net income |
NetIncomeLoss
|
$23.05M | USD | Annual |
| Net income |
NetIncomeLoss
|
$23.05M | USD | Annual |
| Stock-based compensation |
ShareBasedCompensation
|
$10.32M | USD | Annual |
| Stock-based compensation |
ShareBasedCompensation
|
$10.32M | USD | Annual |
| Stock-based compensation |
ShareBasedCompensation
|
$6.51M | USD | Annual |
| Stock-based compensation |
ShareBasedCompensation
|
$6.51M | USD | Annual |
| Stock-based compensation |
ShareBasedCompensation
|
$8.04M | USD | Annual |
| Stock-based compensation |
ShareBasedCompensation
|
$8.04M | USD | Annual |
| Depreciation and amortization |
DepreciationDepletionAndAmortization
|
$4.05M | USD | Annual |
| Depreciation and amortization |
DepreciationDepletionAndAmortization
|
$4.05M | USD | Annual |
| Depreciation and amortization |
DepreciationDepletionAndAmortization
|
$4.10M | USD | Annual |
| Depreciation and amortization |
DepreciationDepletionAndAmortization
|
$4.10M | USD | Annual |
| Depreciation and amortization |
DepreciationDepletionAndAmortization
|
$4.76M | USD | Annual |
| Depreciation and amortization |
DepreciationDepletionAndAmortization
|
$4.76M | USD | Annual |
| Right of use asset amortization |
OperatingLeaseRightOfUseAssetAmortizationExpense
|
$1.54M | USD | Annual |
| Right of use asset amortization |
OperatingLeaseRightOfUseAssetAmortizationExpense
|
$1.54M | USD | Annual |
| Right of use asset amortization |
OperatingLeaseRightOfUseAssetAmortizationExpense
|
$1.77M | USD | Annual |
| Right of use asset amortization |
OperatingLeaseRightOfUseAssetAmortizationExpense
|
$1.77M | USD | Annual |
| Right of use asset amortization |
OperatingLeaseRightOfUseAssetAmortizationExpense
|
$1.65M | USD | Annual |
| Right of use asset amortization |
OperatingLeaseRightOfUseAssetAmortizationExpense
|
$1.65M | USD | Annual |
| Accretion (amortization) of discounts (premiums) on investments |
AccretionAmortizationOfDiscountsAndPremiumsInvestments
|
$-680.00K | USD | Annual |
| Accretion (amortization) of discounts (premiums) on investments |
AccretionAmortizationOfDiscountsAndPremiumsInvestments
|
$-680.00K | USD | Annual |
| Accretion (amortization) of discounts (premiums) on investments |
AccretionAmortizationOfDiscountsAndPremiumsInvestments
|
$1.33M | USD | Annual |
| Accretion (amortization) of discounts (premiums) on investments |
AccretionAmortizationOfDiscountsAndPremiumsInvestments
|
$1.33M | USD | Annual |
| Accretion (amortization) of discounts (premiums) on investments |
AccretionAmortizationOfDiscountsAndPremiumsInvestments
|
$862.00K | USD | Annual |
| Accretion (amortization) of discounts (premiums) on investments |
AccretionAmortizationOfDiscountsAndPremiumsInvestments
|
$862.00K | USD | Annual |
| Deferred income taxes |
DeferredIncomeTaxesAndTaxCredits
|
$1.32M | USD | Annual |
| Deferred income taxes |
DeferredIncomeTaxesAndTaxCredits
|
$1.32M | USD | Annual |
| Deferred income taxes |
DeferredIncomeTaxesAndTaxCredits
|
$1.16M | USD | Annual |
| Deferred income taxes |
DeferredIncomeTaxesAndTaxCredits
|
$1.16M | USD | Annual |
| Deferred income taxes |
DeferredIncomeTaxesAndTaxCredits
|
$-61.00K | USD | Annual |
| Deferred income taxes |
DeferredIncomeTaxesAndTaxCredits
|
$-61.00K | USD | Annual |
| Other non-cash adjustments |
OtherNoncashIncomeExpense
|
$-1.03M | USD | Annual |
| Other non-cash adjustments |
OtherNoncashIncomeExpense
|
$-1.03M | USD | Annual |
| Other non-cash adjustments |
OtherNoncashIncomeExpense
|
$-83.00K | USD | Annual |
| Other non-cash adjustments |
OtherNoncashIncomeExpense
|
$-83.00K | USD | Annual |
| Other non-cash adjustments |
OtherNoncashIncomeExpense
|
$201.00K | USD | Annual |
| Other non-cash adjustments |
OtherNoncashIncomeExpense
|
$201.00K | USD | Annual |
| Accounts receivable, net |
IncreaseDecreaseInAccountsReceivable
|
$13.48M | USD | Annual |
| Accounts receivable, net |
IncreaseDecreaseInAccountsReceivable
|
$13.48M | USD | Annual |
| Accounts receivable, net |
IncreaseDecreaseInAccountsReceivable
|
$17.21M | USD | Annual |
| Accounts receivable, net |
IncreaseDecreaseInAccountsReceivable
|
$17.21M | USD | Annual |
| Accounts receivable, net |
IncreaseDecreaseInAccountsReceivable
|
$12.87M | USD | Annual |
| Accounts receivable, net |
IncreaseDecreaseInAccountsReceivable
|
$12.87M | USD | Annual |
| Contract assets |
IncreaseDecreaseInCostsInExcessOfBillingsOnUncompletedContractsOrPrograms1
|
$-2.18M | USD | Annual |
| Contract assets |
IncreaseDecreaseInCostsInExcessOfBillingsOnUncompletedContractsOrPrograms1
|
$-2.18M | USD | Annual |
| Contract assets |
IncreaseDecreaseInCostsInExcessOfBillingsOnUncompletedContractsOrPrograms1
|
$-1.23M | USD | Annual |
| Contract assets |
IncreaseDecreaseInCostsInExcessOfBillingsOnUncompletedContractsOrPrograms1
|
$-1.23M | USD | Annual |
| Contract assets |
IncreaseDecreaseInCostsInExcessOfBillingsOnUncompletedContractsOrPrograms1
|
$1.13M | USD | Annual |
| Contract assets |
IncreaseDecreaseInCostsInExcessOfBillingsOnUncompletedContractsOrPrograms1
|
$1.13M | USD | Annual |
| Inventories, net |
IncreaseDecreaseInInventories
|
$-1.20M | USD | Annual |
| Inventories, net |
IncreaseDecreaseInInventories
|
$-1.20M | USD | Annual |
| Inventories, net |
IncreaseDecreaseInInventories
|
$-1.35M | USD | Annual |
| Inventories, net |
IncreaseDecreaseInInventories
|
$-1.35M | USD | Annual |
| Inventories, net |
IncreaseDecreaseInInventories
|
$8.28M | USD | Annual |
| Inventories, net |
IncreaseDecreaseInInventories
|
$8.28M | USD | Annual |
| Prepaid and other assets |
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
$96.00K | USD | Annual |
| Prepaid and other assets |
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
$96.00K | USD | Annual |
| Prepaid and other assets |
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
$-138.00K | USD | Annual |
| Prepaid and other assets |
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
$-138.00K | USD | Annual |
| Prepaid and other assets |
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
$756.00K | USD | Annual |
| Prepaid and other assets |
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
$756.00K | USD | Annual |
| Accounts payable |
IncreaseDecreaseInAccountsPayable
|
$787.00K | USD | Annual |
| Accounts payable |
IncreaseDecreaseInAccountsPayable
|
$787.00K | USD | Annual |
| Accounts payable |
IncreaseDecreaseInAccountsPayable
|
$138.00K | USD | Annual |
| Accounts payable |
IncreaseDecreaseInAccountsPayable
|
$138.00K | USD | Annual |
| Accounts payable |
IncreaseDecreaseInAccountsPayable
|
$2.63M | USD | Annual |
| Accounts payable |
IncreaseDecreaseInAccountsPayable
|
$2.63M | USD | Annual |
| Accrued expenses and other liabilities |
IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
|
$-1.35M | USD | Annual |
| Accrued expenses and other liabilities |
IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
|
$-1.35M | USD | Annual |
| Accrued expenses and other liabilities |
IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
|
$-1.06M | USD | Annual |
| Accrued expenses and other liabilities |
IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
|
$-1.06M | USD | Annual |
| Accrued expenses and other liabilities |
IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
|
$37.00K | USD | Annual |
| Accrued expenses and other liabilities |
IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
|
$37.00K | USD | Annual |
| Contract liabilities |
IncreaseDecreaseInContractLiabilities
|
$-2.09M | USD | Annual |
| Contract liabilities |
IncreaseDecreaseInContractLiabilities
|
$-2.09M | USD | Annual |
| Contract liabilities |
IncreaseDecreaseInContractLiabilities
|
$-616.00K | USD | Annual |
| Contract liabilities |
IncreaseDecreaseInContractLiabilities
|
$-616.00K | USD | Annual |
| Contract liabilities |
IncreaseDecreaseInContractLiabilities
|
$-129.00K | USD | Annual |
| Contract liabilities |
IncreaseDecreaseInContractLiabilities
|
$-129.00K | USD | Annual |
| Net cash provided by operating activities |
NetCashProvidedByUsedInOperatingActivities
|
$20.52M | USD | Annual |
| Net cash provided by operating activities |
NetCashProvidedByUsedInOperatingActivities
|
$20.52M | USD | Annual |
| Net cash provided by operating activities |
NetCashProvidedByUsedInOperatingActivities
|
$12.63M | USD | Annual |
| Net cash provided by operating activities |
NetCashProvidedByUsedInOperatingActivities
|
$12.63M | USD | Annual |
| Net cash provided by operating activities |
NetCashProvidedByUsedInOperatingActivities
|
$26.05M | USD | Annual |
| Net cash provided by operating activities |
NetCashProvidedByUsedInOperatingActivities
|
$26.05M | USD | Annual |
| Sales of marketable securities |
ProceedsFromSaleOfAvailableForSaleSecuritiesDebt
|
- | USD | Annual |
| Sales of marketable securities |
ProceedsFromSaleOfAvailableForSaleSecuritiesDebt
|
- | USD | Annual |
| Sales of marketable securities |
ProceedsFromSaleOfAvailableForSaleSecuritiesDebt
|
$2.97M | USD | Annual |
| Sales of marketable securities |
ProceedsFromSaleOfAvailableForSaleSecuritiesDebt
|
$2.97M | USD | Annual |
| Sales of marketable securities |
ProceedsFromSaleOfAvailableForSaleSecuritiesDebt
|
- | USD | Annual |
| Sales of marketable securities |
ProceedsFromSaleOfAvailableForSaleSecuritiesDebt
|
- | USD | Annual |
| Maturities of marketable securities |
ProceedsFromSaleAndMaturityOfMarketableSecurities
|
$64.95M | USD | Annual |
| Maturities of marketable securities |
ProceedsFromSaleAndMaturityOfMarketableSecurities
|
$64.95M | USD | Annual |
| Maturities of marketable securities |
ProceedsFromSaleAndMaturityOfMarketableSecurities
|
$39.76M | USD | Annual |
| Maturities of marketable securities |
ProceedsFromSaleAndMaturityOfMarketableSecurities
|
$39.76M | USD | Annual |
| Maturities of marketable securities |
ProceedsFromSaleAndMaturityOfMarketableSecurities
|
$76.51M | USD | Annual |
| Maturities of marketable securities |
ProceedsFromSaleAndMaturityOfMarketableSecurities
|
$76.51M | USD | Annual |
| Purchases of marketable securities |
PaymentsToAcquireMarketableSecurities
|
$91.00M | USD | Annual |
| Purchases of marketable securities |
PaymentsToAcquireMarketableSecurities
|
$91.00M | USD | Annual |
| Purchases of marketable securities |
PaymentsToAcquireMarketableSecurities
|
$84.56M | USD | Annual |
| Purchases of marketable securities |
PaymentsToAcquireMarketableSecurities
|
$84.56M | USD | Annual |
| Purchases of marketable securities |
PaymentsToAcquireMarketableSecurities
|
$43.57M | USD | Annual |
| Purchases of marketable securities |
PaymentsToAcquireMarketableSecurities
|
$43.57M | USD | Annual |
| Capital expenditures |
PaymentsToAcquirePropertyPlantAndEquipment
|
$2.57M | USD | Annual |
| Capital expenditures |
PaymentsToAcquirePropertyPlantAndEquipment
|
$2.57M | USD | Annual |
| Capital expenditures |
PaymentsToAcquirePropertyPlantAndEquipment
|
$4.23M | USD | Annual |
| Capital expenditures |
PaymentsToAcquirePropertyPlantAndEquipment
|
$4.23M | USD | Annual |
| Capital expenditures |
PaymentsToAcquirePropertyPlantAndEquipment
|
$1.30M | USD | Annual |
| Capital expenditures |
PaymentsToAcquirePropertyPlantAndEquipment
|
$1.30M | USD | Annual |
| Proceeds from sales of fixed assets |
ProceedsFromSaleOfPropertyPlantAndEquipment
|
$87.00K | USD | Annual |
| Proceeds from sales of fixed assets |
ProceedsFromSaleOfPropertyPlantAndEquipment
|
$87.00K | USD | Annual |
| Proceeds from sales of fixed assets |
ProceedsFromSaleOfPropertyPlantAndEquipment
|
$133.00K | USD | Annual |
| Proceeds from sales of fixed assets |
ProceedsFromSaleOfPropertyPlantAndEquipment
|
$133.00K | USD | Annual |
| Proceeds from sales of fixed assets |
ProceedsFromSaleOfPropertyPlantAndEquipment
|
$1.10M | USD | Annual |
| Proceeds from sales of fixed assets |
ProceedsFromSaleOfPropertyPlantAndEquipment
|
$1.10M | USD | Annual |
| Net cash used in investing activities |
NetCashProvidedByUsedInInvestingActivities
|
$-6.95M | USD | Annual |
| Net cash used in investing activities |
NetCashProvidedByUsedInInvestingActivities
|
$-6.95M | USD | Annual |
| Net cash used in investing activities |
NetCashProvidedByUsedInInvestingActivities
|
$-19.11M | USD | Annual |
| Net cash used in investing activities |
NetCashProvidedByUsedInInvestingActivities
|
$-19.11M | USD | Annual |
| Net cash used in investing activities |
NetCashProvidedByUsedInInvestingActivities
|
$-15.65M | USD | Annual |
| Net cash used in investing activities |
NetCashProvidedByUsedInInvestingActivities
|
$-15.65M | USD | Annual |
| Net proceeds from issuance of common stock |
ProceedsFromIssuanceOfCommonStock
|
$7.10M | USD | Annual |
| Net proceeds from issuance of common stock |
ProceedsFromIssuanceOfCommonStock
|
$7.10M | USD | Annual |
| Net proceeds from issuance of common stock |
ProceedsFromIssuanceOfCommonStock
|
$4.79M | USD | Annual |
| Net proceeds from issuance of common stock |
ProceedsFromIssuanceOfCommonStock
|
$4.79M | USD | Annual |
| Net proceeds from issuance of common stock |
ProceedsFromIssuanceOfCommonStock
|
$2.99M | USD | Annual |
| Net proceeds from issuance of common stock |
ProceedsFromIssuanceOfCommonStock
|
$2.99M | USD | Annual |
| Repurchase of common stock |
PaymentsForRepurchaseOfCommonStock
|
$50.38M | USD | Annual |
| Repurchase of common stock |
PaymentsForRepurchaseOfCommonStock
|
$50.38M | USD | Annual |
| Repurchase of common stock |
PaymentsForRepurchaseOfCommonStock
|
$26.65M | USD | Annual |
| Repurchase of common stock |
PaymentsForRepurchaseOfCommonStock
|
$26.65M | USD | Annual |
| Repurchase of common stock |
PaymentsForRepurchaseOfCommonStock
|
- | USD | Annual |
| Repurchase of common stock |
PaymentsForRepurchaseOfCommonStock
|
- | USD | Annual |
| Net cash (used in) provided by financing activities |
NetCashProvidedByUsedInFinancingActivities
|
$-43.28M | USD | Annual |
| Net cash (used in) provided by financing activities |
NetCashProvidedByUsedInFinancingActivities
|
$-43.28M | USD | Annual |
| Net cash (used in) provided by financing activities |
NetCashProvidedByUsedInFinancingActivities
|
$-23.67M | USD | Annual |
| Net cash (used in) provided by financing activities |
NetCashProvidedByUsedInFinancingActivities
|
$-23.67M | USD | Annual |
| Net cash (used in) provided by financing activities |
NetCashProvidedByUsedInFinancingActivities
|
$4.79M | USD | Annual |
| Net cash (used in) provided by financing activities |
NetCashProvidedByUsedInFinancingActivities
|
$4.79M | USD | Annual |
| Effect of exchange rate differences on cash and cash equivalents |
EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$-52.00K | USD | Annual |
| Effect of exchange rate differences on cash and cash equivalents |
EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$-52.00K | USD | Annual |
| Effect of exchange rate differences on cash and cash equivalents |
EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$-20.00K | USD | Annual |
| Effect of exchange rate differences on cash and cash equivalents |
EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$-20.00K | USD | Annual |
| Effect of exchange rate differences on cash and cash equivalents |
EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$33.00K | USD | Annual |
| Effect of exchange rate differences on cash and cash equivalents |
EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$33.00K | USD | Annual |
| Net change in cash, cash equivalents and restricted cash |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
$11.77M | USD | Annual |
| Net change in cash, cash equivalents and restricted cash |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
$11.77M | USD | Annual |
| Net change in cash, cash equivalents and restricted cash |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
$-18.00M | USD | Annual |
| Net change in cash, cash equivalents and restricted cash |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
$-18.00M | USD | Annual |
| Net change in cash, cash equivalents and restricted cash |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
$-38.47M | USD | Annual |
| Net change in cash, cash equivalents and restricted cash |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
$-38.47M | USD | Annual |
| Cash, cash equivalents and restricted cash, beginning of year |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$68.22M | USD | Point-in-time |
| Cash, cash equivalents and restricted cash, beginning of year |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$68.22M | USD | Point-in-time |
| Cash, cash equivalents and restricted cash, beginning of year |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$74.46M | USD | Point-in-time |
| Cash, cash equivalents and restricted cash, beginning of year |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$74.46M | USD | Point-in-time |
| Cash, cash equivalents and restricted cash, beginning of year |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$56.46M | USD | Point-in-time |
| Cash, cash equivalents and restricted cash, beginning of year |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$56.46M | USD | Point-in-time |
| Cash, cash equivalents and restricted cash, beginning of year |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$29.76M | USD | Point-in-time |
| Cash, cash equivalents and restricted cash, beginning of year |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$29.76M | USD | Point-in-time |
| Cash, cash equivalents and restricted cash, end of year |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$68.22M | USD | Point-in-time |
| Cash, cash equivalents and restricted cash, end of year |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$68.22M | USD | Point-in-time |
| Cash, cash equivalents and restricted cash, end of year |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$74.46M | USD | Point-in-time |
| Cash, cash equivalents and restricted cash, end of year |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$74.46M | USD | Point-in-time |
| Cash, cash equivalents and restricted cash, end of year |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$56.46M | USD | Point-in-time |
| Cash, cash equivalents and restricted cash, end of year |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$56.46M | USD | Point-in-time |
| Cash, cash equivalents and restricted cash, end of year |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$29.76M | USD | Point-in-time |
| Cash, cash equivalents and restricted cash, end of year |
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
$29.76M | USD | Point-in-time |
| Cash received for income tax refunds |
ProceedsFromIncomeTaxRefunds
|
- | USD | Annual |
| Cash received for income tax refunds |
ProceedsFromIncomeTaxRefunds
|
- | USD | Annual |
| Cash received for income tax refunds |
ProceedsFromIncomeTaxRefunds
|
$2.00K | USD | Annual |
| Cash received for income tax refunds |
ProceedsFromIncomeTaxRefunds
|
$2.00K | USD | Annual |
| Cash received for income tax refunds |
ProceedsFromIncomeTaxRefunds
|
$3.00K | USD | Annual |
| Cash received for income tax refunds |
ProceedsFromIncomeTaxRefunds
|
$3.00K | USD | Annual |
| Cash paid for income taxes |
IncomeTaxesPaid
|
$1.55M | USD | Annual |
| Cash paid for income taxes |
IncomeTaxesPaid
|
$1.55M | USD | Annual |
| Cash paid for income taxes |
IncomeTaxesPaid
|
$505.00K | USD | Annual |
| Cash paid for income taxes |
IncomeTaxesPaid
|
$505.00K | USD | Annual |
| Cash paid for income taxes |
IncomeTaxesPaid
|
$549.00K | USD | Annual |
| Cash paid for income taxes |
IncomeTaxesPaid
|
$549.00K | USD | Annual |
| Purchases of property and equipment in trade accounts payable, and accrued expenses and other liabilities |
CapitalExpendituresIncurredButNotYetPaid
|
$740.00K | USD | Annual |
| Purchases of property and equipment in trade accounts payable, and accrued expenses and other liabilities |
CapitalExpendituresIncurredButNotYetPaid
|
$740.00K | USD | Annual |
| Purchases of property and equipment in trade accounts payable, and accrued expenses and other liabilities |
CapitalExpendituresIncurredButNotYetPaid
|
$70.00K | USD | Annual |
| Purchases of property and equipment in trade accounts payable, and accrued expenses and other liabilities |
CapitalExpendituresIncurredButNotYetPaid
|
$70.00K | USD | Annual |
| Purchases of property and equipment in trade accounts payable, and accrued expenses and other liabilities |
CapitalExpendituresIncurredButNotYetPaid
|
$647.00K | USD | Annual |
| Purchases of property and equipment in trade accounts payable, and accrued expenses and other liabilities |
CapitalExpendituresIncurredButNotYetPaid
|
$647.00K | USD | Annual |
| Excise tax on share repurchases, accrued but not paid |
ExciseTaxOnShareRepurchasesAccruedButNotYetPaid
|
- | USD | Annual |
| Excise tax on share repurchases, accrued but not paid |
ExciseTaxOnShareRepurchasesAccruedButNotYetPaid
|
- | USD | Annual |
| Excise tax on share repurchases, accrued but not paid |
ExciseTaxOnShareRepurchasesAccruedButNotYetPaid
|
$387.00K | USD | Annual |
| Excise tax on share repurchases, accrued but not paid |
ExciseTaxOnShareRepurchasesAccruedButNotYetPaid
|
$387.00K | USD | Annual |
| Excise tax on share repurchases, accrued but not paid |
ExciseTaxOnShareRepurchasesAccruedButNotYetPaid
|
- | USD | Annual |
| Excise tax on share repurchases, accrued but not paid |
ExciseTaxOnShareRepurchasesAccruedButNotYetPaid
|
- | USD | Annual |
Stockholders Equity
46 line items
| Line Item | Tag | Value | Unit | Period |
|---|---|---|---|---|
| Beginning balance |
StockholdersEquity
|
$210.01M | USD | Point-in-time |
| Beginning balance |
StockholdersEquity
|
$210.01M | USD | Point-in-time |
| Beginning balance |
StockholdersEquity
|
$219.81M | USD | Point-in-time |
| Beginning balance |
StockholdersEquity
|
$219.81M | USD | Point-in-time |
| Beginning balance |
StockholdersEquity
|
$185.34M | USD | Point-in-time |
| Beginning balance |
StockholdersEquity
|
$185.34M | USD | Point-in-time |
| Beginning balance (in shares) |
CommonStockSharesOutstanding
|
56.88M | shares | Point-in-time |
| Beginning balance (in shares) |
CommonStockSharesOutstanding
|
56.88M | shares | Point-in-time |
| Beginning balance (in shares) |
CommonStockSharesOutstanding
|
56.08M | shares | Point-in-time |
| Beginning balance (in shares) |
CommonStockSharesOutstanding
|
56.08M | shares | Point-in-time |
| Beginning balance (in shares) |
CommonStockSharesOutstanding
|
54.79M | shares | Point-in-time |
| Beginning balance (in shares) |
CommonStockSharesOutstanding
|
54.79M | shares | Point-in-time |
| Beginning balance, treasury stock (in shares) |
TreasuryStockCommonShares
|
8.15M | shares | Point-in-time |
| Beginning balance, treasury stock (in shares) |
TreasuryStockCommonShares
|
8.15M | shares | Point-in-time |
| Beginning balance, treasury stock (in shares) |
TreasuryStockCommonShares
|
11.40M | shares | Point-in-time |
| Beginning balance, treasury stock (in shares) |
TreasuryStockCommonShares
|
11.40M | shares | Point-in-time |
| Total other comprehensive income (loss), net of tax |
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
$-200.00K | USD | Annual |
| Total other comprehensive income (loss), net of tax |
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
$-200.00K | USD | Annual |
| Total other comprehensive income (loss), net of tax |
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
$142.00K | USD | Annual |
| Total other comprehensive income (loss), net of tax |
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
$142.00K | USD | Annual |
| Total other comprehensive income (loss), net of tax |
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
$305.00K | USD | Annual |
| Total other comprehensive income (loss), net of tax |
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
$305.00K | USD | Annual |
| Common stock repurchased |
TreasuryStockValueAcquiredCostMethod
|
$130.50M | USD | Annual |
| Common stock repurchased |
TreasuryStockValueAcquiredCostMethod
|
$130.50M | USD | Annual |
| Net income |
NetIncomeLoss
|
$21.50M | USD | Annual |
| Net income |
NetIncomeLoss
|
$21.50M | USD | Annual |
| Net income |
NetIncomeLoss
|
$24.05M | USD | Annual |
| Net income |
NetIncomeLoss
|
$24.05M | USD | Annual |
| Net income |
NetIncomeLoss
|
$23.05M | USD | Annual |
| Net income |
NetIncomeLoss
|
$23.05M | USD | Annual |
| Ending balance, treasury stock (in shares) |
TreasuryStockCommonShares
|
8.15M | shares | Point-in-time |
| Ending balance, treasury stock (in shares) |
TreasuryStockCommonShares
|
8.15M | shares | Point-in-time |
| Ending balance, treasury stock (in shares) |
TreasuryStockCommonShares
|
11.40M | shares | Point-in-time |
| Ending balance, treasury stock (in shares) |
TreasuryStockCommonShares
|
11.40M | shares | Point-in-time |
| Ending balance |
StockholdersEquity
|
$210.01M | USD | Point-in-time |
| Ending balance |
StockholdersEquity
|
$210.01M | USD | Point-in-time |
| Ending balance |
StockholdersEquity
|
$219.81M | USD | Point-in-time |
| Ending balance |
StockholdersEquity
|
$219.81M | USD | Point-in-time |
| Ending balance |
StockholdersEquity
|
$185.34M | USD | Point-in-time |
| Ending balance |
StockholdersEquity
|
$185.34M | USD | Point-in-time |
| Ending balance (in shares) |
CommonStockSharesOutstanding
|
56.88M | shares | Point-in-time |
| Ending balance (in shares) |
CommonStockSharesOutstanding
|
56.88M | shares | Point-in-time |
| Ending balance (in shares) |
CommonStockSharesOutstanding
|
56.08M | shares | Point-in-time |
| Ending balance (in shares) |
CommonStockSharesOutstanding
|
56.08M | shares | Point-in-time |
| Ending balance (in shares) |
CommonStockSharesOutstanding
|
54.79M | shares | Point-in-time |
| Ending balance (in shares) |
CommonStockSharesOutstanding
|
54.79M | shares | Point-in-time |
Comprehensive Income
30 line items
| Line Item | Tag | Value | Unit | Period |
|---|---|---|---|---|
| Net income |
NetIncomeLoss
|
$21.50M | USD | Annual |
| Net income |
NetIncomeLoss
|
$21.50M | USD | Annual |
| Net income |
NetIncomeLoss
|
$24.05M | USD | Annual |
| Net income |
NetIncomeLoss
|
$24.05M | USD | Annual |
| Net income |
NetIncomeLoss
|
$23.05M | USD | Annual |
| Net income |
NetIncomeLoss
|
$23.05M | USD | Annual |
| Foreign currency translation adjustments |
OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
|
$31.00K | USD | Annual |
| Foreign currency translation adjustments |
OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
|
$31.00K | USD | Annual |
| Foreign currency translation adjustments |
OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
|
$51.00K | USD | Annual |
| Foreign currency translation adjustments |
OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
|
$51.00K | USD | Annual |
| Foreign currency translation adjustments |
OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
|
$15.00K | USD | Annual |
| Foreign currency translation adjustments |
OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
|
$15.00K | USD | Annual |
| Unrealized gain (loss) on investments |
OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
|
$111.00K | USD | Annual |
| Unrealized gain (loss) on investments |
OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
|
$111.00K | USD | Annual |
| Unrealized gain (loss) on investments |
OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
|
$-215.00K | USD | Annual |
| Unrealized gain (loss) on investments |
OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
|
$-215.00K | USD | Annual |
| Unrealized gain (loss) on investments |
OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
|
$254.00K | USD | Annual |
| Unrealized gain (loss) on investments |
OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
|
$254.00K | USD | Annual |
| Total other comprehensive income (loss), net of tax |
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
$-200.00K | USD | Annual |
| Total other comprehensive income (loss), net of tax |
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
$-200.00K | USD | Annual |
| Total other comprehensive income (loss), net of tax |
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
$142.00K | USD | Annual |
| Total other comprehensive income (loss), net of tax |
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
$142.00K | USD | Annual |
| Total other comprehensive income (loss), net of tax |
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
$305.00K | USD | Annual |
| Total other comprehensive income (loss), net of tax |
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
$305.00K | USD | Annual |
| Comprehensive income |
ComprehensiveIncomeNetOfTax
|
$21.81M | USD | Annual |
| Comprehensive income |
ComprehensiveIncomeNetOfTax
|
$21.81M | USD | Annual |
| Comprehensive income |
ComprehensiveIncomeNetOfTax
|
$23.19M | USD | Annual |
| Comprehensive income |
ComprehensiveIncomeNetOfTax
|
$23.19M | USD | Annual |
| Comprehensive income |
ComprehensiveIncomeNetOfTax
|
$23.85M | USD | Annual |
| Comprehensive income |
ComprehensiveIncomeNetOfTax
|
$23.85M | USD | Annual |
Data is extracted from SEC EDGAR XBRL filings. Values shown are as reported in the filing.