$1.08 (4.58%)
| date | 2025-12-31 | 2024-12-31 | 2023-12-31 | 2022-12-31 | 2021-12-31 | 2020-12-31 | 2019-12-31 | 2018-12-31 | 2017-12-31 | 2016-12-31 |
|---|---|---|---|---|---|---|---|---|---|---|
| revenue | 273.8M | 302.38M | 357.74M | 377.38M | 307.48M | 222.36M | 284.29M | 269.48M | 161.67M | 174.88M |
| costOfRevenue | 226.22M | 249.12M | 293.22M | 324.97M | 266.14M | 187.88M | 262.78M | 242.34M | 136.99M | 146.96M |
| grossProfit | 47.58M | 53.26M | 64.52M | 52.4M | 41.34M | 34.47M | 21.51M | 27.14M | 24.68M | 27.92M |
| researchAndDevelopmentExpenses | - | - | 1.7M | - | 1.3M | - | - | 1.03M | 848K | 965K |
| generalAndAdministrativeExpenses | 33.36M | 36.56M | 37.76M | 34.4M | 30.11M | 24.08M | 28.93M | 27.84M | 16.69M | 16.38M |
| sellingAndMarketingExpenses | - | - | - | - | 162K | - | - | - | - | - |
| sellingGeneralAndAdministrativeExpenses | 33.36M | 36.56M | 37.76M | 34.4M | 30.28M | 24.08M | 28.93M | 27.84M | 16.69M | 16.38M |
| otherExpenses | - | - | -1.48M | - | -1.3M | - | - | 48000 | - | - |
| operatingExpenses | 33.36M | 36.56M | 37.98M | 34.4M | 30.28M | 24.08M | 28.93M | 27.84M | 16.69M | 16.38M |
| costAndExpenses | 259.58M | 285.68M | 331.2M | 359.37M | 296.42M | 211.97M | 291.72M | 270.18M | 153.68M | 163.34M |
| netInterestIncome | -118K | 100000 | -1.01M | -2.16M | -2.31M | -5.92M | -4.14M | -2.39M | -245K | -298K |
| interestIncome | - | 193K | - | - | - | - | - | - | - | - |
| interestExpense | 118K | 93000 | 1.01M | 2.16M | 2.31M | 5.92M | 4.14M | 2.39M | 245K | 298K |
| depreciationAndAmortization | 12.35M | 13.4M | 12.91M | 11.88M | 11.62M | 11.66M | 10.38M | 9.38M | 6.24M | 6.28M |
| ebitda | 27.14M | 30.97M | 39.67M | 28.63M | 22.85M | 22.13M | -1.06M | 6.17M | 14.8M | 17.74M |
| ebit | 14.8M | 17.57M | 26.76M | 16.74M | 11.23M | 10.47M | -11.43M | -3.05M | 8.56M | 11.46M |
| nonOperatingIncomeExcludingInterest | -577K | -879K | -220K | 1.26M | -162K | -80000 | -94000 | -48000 | -615K | 71000 |
| operatingIncome | 14.22M | 16.7M | 26.54M | 18M | 11.07M | 10.39M | -11.53M | -3.1M | 7.99M | 11.54M |
| totalOtherIncomeExpensesNet | 459K | 786K | -791K | -3.42M | -2.15M | -5.84M | -4.05M | -2.35M | -196K | -280K |
| incomeBeforeTax | 14.68M | 17.48M | 25.75M | 14.58M | 8.92M | 4.55M | -15.58M | -5.45M | 7.74M | 11.25M |
| incomeTaxExpense | 3.48M | 4.18M | 5.42M | 2.38M | 4.25M | -3.62M | -355K | -664K | 2.29M | 3.84M |
| netIncomeFromContinuingOperations | 11.2M | 13.3M | 20.32M | 12.2M | 4.67M | 8.16M | -15.22M | -4.78M | 5.46M | 7.41M |
| netIncomeFromDiscontinuedOperations | - | - | - | - | - | - | - | - | - | - |
| otherAdjustmentsToNetIncome | - | - | - | - | - | - | - | - | - | - |
| netIncome | 11.2M | 13.3M | 20.32M | 12.2M | 4.67M | 8.16M | -15.22M | -4.78M | 5.46M | 7.41M |
| netIncomeDeductions | - | - | - | - | - | 424K | - | - | - | - |
| bottomLineNetIncome | 11.2M | 13.3M | 20.24M | 12.02M | 4.44M | 7.74M | -15.22M | -4.78M | 5.46M | 7.41M |
| eps | 1.31 | 1.53 | 2.37 | 1.44 | 0.55 | 0.98 | -1.94 | -0.62 | 0.71 | 0.97 |
| date | 2025-12-31 | 2024-12-31 | 2023-12-31 | 2022-12-31 | 2021-12-31 | 2020-12-31 | 2019-12-31 | 2018-12-31 | 2017-12-31 | 2016-12-31 |
|---|---|---|---|---|---|---|---|---|---|---|
| cashAndCashEquivalents | 38.06M | 41.8M | 24.1M | 4.18M | 6.15M | 4.13M | 1.86M | 1.89M | 26.78M | 28.28M |
| shortTermInvestments | - | - | - | - | - | - | - | - | - | - |
| cashAndShortTermInvestments | 38.06M | 41.8M | 24.1M | 4.18M | 6.15M | 4.13M | 1.86M | 1.89M | 26.78M | 28.28M |
| netReceivables | 37.46M | 35.98M | 48.09M | 46.94M | 37.93M | 27.58M | 33.31M | 49.38M | 22.72M | 19.55M |
| accountsReceivables | 30.89M | 30.12M | 41.71M | 44.26M | 35.26M | 27.58M | 33.31M | 45.47M | 19.85M | 19.55M |
| otherReceivables | 6.56M | 5.86M | 6.38M | 2.68M | 2.66M | - | - | 3.92M | 2.87M | - |
| inventory | 19.72M | 18.35M | 22.06M | 23.87M | 25.13M | 18.36M | 21.68M | 25.76M | 13.46M | 10.91M |
| prepaids | - | - | - | - | 5.1M | 4.38M | 3.27M | 1.47M | 1.39M | 912K |
| otherCurrentAssets | 8.1M | 6.76M | 8.62M | 5.67M | 842K | 2.03M | 1.11M | 1.79M | 610K | 228K |
| totalCurrentAssets | 103.33M | 102.89M | 102.88M | 80.66M | 75.14M | 56.48M | 61.22M | 80.3M | 64M | 61.27M |
| propertyPlantEquipmentNet | 101.43M | 82.92M | 84.99M | 88.38M | 81.47M | 76.81M | 83.69M | 80.66M | 68.63M | 70.6M |
| goodwill | 17.38M | 17.38M | 17.38M | 17.38M | 17.38M | 17.38M | 17.38M | 21.48M | 2.4M | 2.4M |
| intangibleAssets | 3.48M | 4.43M | 6.02M | 7.62M | 9.57M | 11.52M | 13.46M | 15.41M | 513K | 563K |
| goodwillAndIntangibleAssets | 20.86M | 21.81M | 23.39M | 25M | 26.94M | 28.89M | 30.84M | 36.89M | 2.92M | 2.97M |
| longTermInvestments | 8000 | 140K | - | - | - | - | - | -1.15M | -843K | -1.38B |
| taxAssets | - | - | - | - | 521K | - | - | 1.15M | 843K | 1.38B |
| otherNonCurrentAssets | 2.51M | 1.8M | 2.12M | 4.57M | 2.61M | 3.33M | 3.55M | 3.35M | 2.08M | 563K |
| totalNonCurrentAssets | 124.8M | 106.66M | 110.5M | 117.95M | 111.55M | 109.03M | 118.08M | 120.9M | 73.62M | 73.57M |
| otherAssets | - | - | - | - | - | - | - | - | - | - |
| totalAssets | 228.13M | 209.55M | 213.38M | 198.62M | 186.69M | 165.51M | 179.31M | 201.2M | 137.62M | 134.84M |
| totalPayables | 14.92M | 17.12M | 23.96M | 29.59M | 22.7M | 16.99M | 19.91M | 25.45M | 13.85M | 8.53M |
| accountPayables | 14.92M | 17.12M | 23.96M | 29.59M | 22.7M | 16.99M | 19.91M | 25.45M | 13.85M | 8.53M |
| otherPayables | - | - | - | - | - | - | - | - | - | - |
| accruedExpenses | 7.17M | 7.91M | 5.06M | 7.64M | 8.2M | 11.09M | 9.47M | 6.31M | 6.48M | 7.34M |
| shortTermDebt | 2.08M | 1.81M | 1.47M | 3.07M | 8.37M | 2.96M | 49.45M | 3.23M | 3M | 3M |
| capitalLeaseObligationsCurrent | - | 1.18M | - | - | - | 1.02M | 1.3M | - | - | -1.08M |
| taxPayables | - | - | - | - | 2.33M | - | - | - | 861K | 1.04M |
| deferredRevenue | 5.02M | - | 5.2M | 1.4M | 6.26M | - | - | 1.69M | -235K | 1.08M |
| otherCurrentLiabilities | 4.99M | 8.69M | 10.5M | 9.1M | 7.53M | 3.93M | 3.7M | 3.51M | 1.25M | 1.34M |
| totalCurrentLiabilities | 34.17M | 36.71M | 46.19M | 50.8M | 53.05M | 36M | 83.83M | 39.03M | 22.54M | 20.28M |
| longTermDebt | 30.75M | 19.71M | 21.52M | 22.99M | 21.25M | 25.2M | - | 55.16M | 3.75M | 6.75M |
| capitalLeaseObligationsNonCurrent | - | 997K | - | - | - | 1.67M | 3.12M | - | - | - |
| deferredRevenueNonCurrent | - | - | - | - | - | - | - | -865K | 1.1M | 1.02M |
| deferredTaxLiabilitiesNonCurrent | 1.03M | - | - | - | - | - | - | 865K | 395K | 2.37M |
| otherNonCurrentLiabilities | 4M | 4.78M | 6.72M | 8.71M | 12.29M | 8.71M | 7.93M | 6.92M | 7.95M | 7.65M |
| totalNonCurrentLiabilities | 35.79M | 25.48M | 28.24M | 31.69M | 33.54M | 35.58M | 11.05M | 63.24M | 13.2M | 17.79M |
| otherLiabilities | - | - | - | - | - | - | - | - | - | - |
| capitalLeaseObligations | - | 2.18M | - | - | - | 2.69M | 4.42M | - | - | -1.08M |
| totalLiabilities | 69.96M | 62.19M | 74.42M | 82.49M | 86.6M | 71.58M | 94.88M | 102.27M | 35.73M | 38.07M |
| treasuryStock | -39.92M | -36.14M | -31.77M | -29.1M | -28.62M | -28.52M | -28.5M | -28.4M | -28.15M | -27.78M |
| preferredStock | - | - | - | - | - | - | - | - | - | - |
| commonStock | 85000 | 86000 | 86000 | 84000 | 82000 | 80000 | 79000 | 78000 | 77000 | 76000 |
| retainedEarnings | 146.56M | 135.37M | 122.07M | 101.74M | 89.54M | 84.87M | 76.71M | 91.93M | 96.43M | 91.92M |
| additionalPaidInCapital | 47.5M | 45.76M | 43.26M | 40.34M | 38.01M | 36.13M | 34.77M | 33.21M | 31.46M | 30.13M |
| date | 2025-12-31 | 2024-12-31 | 2023-12-31 | 2022-12-31 | 2021-12-31 | 2020-12-31 | 2019-12-31 | 2018-12-31 | 2017-12-31 | 2016-12-31 |
|---|---|---|---|---|---|---|---|---|---|---|
| netIncome | 3.08M | 13.3M | 20.32M | 12.2M | 4.67M | 8.16M | -15.22M | -4.78M | 5.46M | 7.41M |
| depreciationAndAmortization | 12.35M | 13.4M | 12.91M | 11.88M | 11.62M | 11.66M | 10.38M | 9.38M | 6.24M | 6.28M |
| deferredIncomeTax | -830K | 473K | 2.47M | -3.47M | -475K | 1.1M | -873K | -1.74M | -597K | 426K |
| stockBasedCompensation | 1.79M | 2.5M | 2.92M | 2.33M | 1.89M | 1.36M | 1.56M | 1.74M | 1.33M | 1M |
| changeInWorkingCapital | -5.33M | 4.06M | -3.81M | -5.6M | -5.9M | 5.65M | 16.66M | -13.7M | -5.53M | 11.05M |
| accountsReceivables | -713K | 11.59M | 2.55M | -9M | -8.95M | 4.84M | 13.04M | -17.94M | -295K | 17.34M |
| inventory | -1.37M | 3.72M | 1.81M | 1.26M | -6.77M | 3.32M | 4.08M | -5.78M | -2.55M | 2.78M |
| accountsPayables | -2.45M | -8.1M | -4.92M | 6M | 5.35M | -3.14M | -4.85M | 7.82M | 5.35M | -4.69M |
| otherWorkingCapital | -803K | -3.14M | -3.25M | -3.85M | 4.48M | 628K | 4.38M | 2.2M | -8.03M | -4.38M |
| otherNonCashItems | 8.13M | 1.42M | 22000 | 1.63M | 743K | 237K | 4.2M | 2.57M | 8000 | -107K |
| netCashProvidedByOperatingActivities | 19.18M | 35.15M | 34.84M | 18.98M | 12.55M | 28.16M | 16.7M | -6.53M | 6.91M | 26.07M |
| investmentsInPropertyPlantAndEquipment | -17.27M | -11.52M | -9.1M | -16.59M | -11.57M | -3.68M | -7.46M | -5.8M | -4.26M | -2.86M |
| acquisitionsNet | - | - | - | - | - | - | - | -63M | - | - |
| purchasesOfInvestments | - | - | - | - | - | - | - | - | - | - |
| salesMaturitiesOfInvestments | - | - | - | - | - | - | - | - | - | - |
| otherInvestingActivities | - | - | - | - | 154K | - | - | -63M | - | - |
| netCashProvidedByInvestingActivities | -17.27M | -11.52M | -9.1M | -16.59M | -11.42M | -3.68M | -7.46M | -68.81M | -4.26M | -2.86M |
| netDebtIssuance | -1.89M | -1.55M | -3.15M | -3.88M | 982K | -22.19M | -8.74M | 52.25M | -3M | -3.71M |
| longTermNetDebtIssuance | -1.89M | -1.55M | -1.29M | -1.32M | -3.02M | -10.6M | -8.74M | 52.25M | -3M | -3.71M |
| shortTermNetDebtIssuance | - | - | -1.86M | -2.56M | 4M | -11.59M | - | - | - | - |
| netStockIssuance | -3.17M | -2.94M | -2.67M | -482K | -96000 | -20000 | -98000 | -250K | -372K | -134K |
| netCommonStockIssuance | -3.17M | -2.94M | -2.67M | -482K | -96000 | -20000 | -98000 | -250K | -372K | -134K |
| commonStockIssuance | - | - | - | - | - | - | - | - | - | - |
| commonStockRepurchased | -3.17M | -2.94M | -2.67M | -482K | -96000 | -20000 | -98000 | -250K | -372K | -134K |
| netPreferredStockIssuance | - | - | - | - | - | - | - | - | - | - |
| netDividendsPaid | - | - | - | - | - | - | - | -792K | -786K | - |
| commonDividendsPaid | - | - | - | - | - | - | - | -792K | -786K | - |
| preferredDividendsPaid | - | - | - | - | - | - | - | - | - | - |
| otherFinancingActivities | -601K | -1.44M | - | - | -2000 | - | -435K | -763K | - | -16000 |
| netCashProvidedByFinancingActivities | -5.66M | -5.93M | -5.82M | -4.36M | 884K | -22.21M | -9.28M | 50.44M | -4.16M | -3.86M |
| date | 2026-03-31 | 2025-12-31 | 2025-09-30 | 2025-06-30 | 2025-03-31 | 2024-12-31 | 2024-09-30 | 2024-06-30 | 2024-03-31 | 2023-12-31 |
|---|---|---|---|---|---|---|---|---|---|---|
| revenue | 58.58M | 74.68M | 58.44M | 79.24M | 61.45M | 62.5M | 72.99M | 88.74M | 78.14M | 73.78M |
| costOfRevenue | 46.6M | 63.34M | 48.38M | 64.92M | 49.66M | 52.61M | 60.65M | 71.02M | 64.84M | 62.84M |
| grossProfit | 11.98M | 11.34M | 10.05M | 14.31M | 11.78M | 9.88M | 12.34M | 17.72M | 13.3M | 10.94M |
| researchAndDevelopmentExpenses | - | - | - | - | - | - | - | - | - | - |
| generalAndAdministrativeExpenses | 11.21M | - | - | - | 8.94M | - | - | 10.1M | 8.57M | 8.2M |
| sellingAndMarketingExpenses | - | - | - | - | - | - | - | 138K | - | - |
| sellingGeneralAndAdministrativeExpenses | 11.21M | 7.75M | 7.6M | 9.1M | 8.94M | 9.02M | 8.74M | 10.24M | 8.57M | 8.2M |
| otherExpenses | - | - | - | - | - | - | - | - | - | 220K |
| operatingExpenses | 11.21M | 7.75M | 7.6M | 9.1M | 8.94M | 9.02M | 8.74M | 10.24M | 8.57M | 8.42M |
| costAndExpenses | 57.82M | 71.08M | 55.98M | 74.02M | 58.61M | 61.63M | 69.39M | 81.25M | 73.41M | 71.26M |
| netInterestIncome | -86000 | 24000 | 60000 | - | -16000 | 94000 | 144K | 38000 | -82000 | -175K |
| interestIncome | - | 24000 | 60000 | - | - | 94000 | 144K | 38000 | - | - |
| interestExpense | 86000 | - | - | - | 16000 | - | - | - | 82000 | 175K |
| depreciationAndAmortization | 3.06M | 2.84M | 3.09M | 3.18M | 3.21M | 3.38M | 3.29M | 3.44M | 3.29M | 3.34M |
| ebitda | 3.94M | 6.67M | 5.75M | 8.54M | 6.16M | 5.13M | 7.18M | 11.1M | 8.16M | 5.92M |
| ebit | 881K | 3.82M | 2.66M | 5.36M | 2.95M | 1.75M | 3.89M | 7.66M | 4.87M | 2.58M |
| nonOperatingIncomeExcludingInterest | -117K | -233K | -201K | -149K | -110K | -879K | -282K | -176K | -138K | -63000 |
| operatingIncome | 764K | 3.59M | 2.46M | 5.21M | 2.84M | 870K | 3.6M | 7.49M | 4.73M | 2.52M |
| totalOtherIncomeExpensesNet | 31000 | 133K | 201K | 149K | 94000 | 273K | 282K | 176K | 56000 | -112K |
| incomeBeforeTax | 795K | 3.72M | 2.66M | 5.36M | 2.93M | 1.14M | 3.89M | 7.66M | 4.79M | 2.41M |
| incomeTaxExpense | 190K | 642K | 779K | 1.31M | 750K | 1.18M | 727K | 1.25M | 1.03M | 224K |
| netIncomeFromContinuingOperations | 605K | 3.08M | 1.88M | 4.05M | 2.18M | -39000 | 3.16M | 6.42M | 3.76M | 2.18M |
| netIncomeFromDiscontinuedOperations | - | - | - | - | - | - | - | - | - | - |
| otherAdjustmentsToNetIncome | - | - | - | - | - | - | - | - | - | - |
| netIncome | 605K | 3.08M | 1.88M | 4.05M | 2.18M | -39000 | 3.16M | 6.42M | 3.76M | 2.18M |
| netIncomeDeductions | - | - | - | - | - | - | - | - | - | - |
| bottomLineNetIncome | 605K | 3.08M | 1.88M | 4.05M | 2.18M | -39000 | 3.16M | 6.42M | 3.76M | 2.1M |
| eps | 0.07 | 0.36 | 0.22 | 0.47 | 0.25 | -0.01 | 0.36 | 0.74 | 0.43 | 0.24 |
| date | 2026-03-31 | 2025-12-31 | 2025-09-30 | 2025-06-30 | 2025-03-31 | 2024-12-31 | 2024-09-30 | 2024-06-30 | 2024-03-31 | 2023-12-31 |
|---|---|---|---|---|---|---|---|---|---|---|
| cashAndCashEquivalents | 23.51M | 38.06M | 42.4M | 43.21M | 44.47M | 41.8M | 42.35M | 37.79M | 26.62M | 24.1M |
| shortTermInvestments | - | - | - | - | - | - | - | - | - | - |
| cashAndShortTermInvestments | 23.51M | 38.06M | 42.4M | 43.21M | 44.47M | 41.8M | 42.35M | 37.79M | 26.62M | 24.1M |
| netReceivables | 61.65M | 37.46M | 42.2M | 43.38M | 41.3M | 35.98M | 42.77M | 53.13M | 46.02M | 41.71M |
| accountsReceivables | 53.49M | 30.89M | 36.29M | 37.79M | 36.74M | 30.12M | 36.78M | 46.99M | 40.08M | 35.33M |
| otherReceivables | 8.16M | 6.56M | 5.91M | 5.59M | 4.55M | 5.86M | 6M | 6.14M | 5.94M | 6.38M |
| inventory | 22.43M | 19.72M | 19.8M | 19.36M | 19.3M | 18.35M | 20.69M | 21.76M | 23.86M | 22.06M |
| prepaids | - | - | - | - | - | - | - | - | - | - |
| otherCurrentAssets | 9.48M | 8.1M | 7.11M | 7.25M | 10.55M | 6.76M | 9.69M | 6.02M | 6.74M | 15M |
| totalCurrentAssets | 117.07M | 103.33M | 111.51M | 113.19M | 115.61M | 102.89M | 115.5M | 118.7M | 103.24M | 102.88M |
| propertyPlantEquipmentNet | 101.99M | 101.43M | 85.34M | 83.76M | 84.67M | 82.92M | 81.48M | 82.54M | 83.7M | 84.99M |
| goodwill | 17.38M | 17.38M | 17.38M | 17.38M | 17.38M | 17.38M | 17.38M | 17.38M | 17.38M | 17.38M |
| intangibleAssets | 3.25M | 3.48M | 3.71M | 3.94M | 4.16M | 4.43M | 4.83M | 5.22M | 5.62M | 6.02M |
| goodwillAndIntangibleAssets | 20.63M | 20.86M | 21.08M | 21.31M | 21.54M | 21.81M | 22.2M | 22.6M | 22.99M | 23.39M |
| longTermInvestments | - | 8000 | 140K | - | - | - | - | - | - | 105K |
| taxAssets | - | - | - | - | - | - | - | - | - | 1.6M |
| otherNonCurrentAssets | 2.66M | 2.51M | 1.62M | 1.66M | 1.77M | 1.94M | 1.46M | 1.86M | 2.34M | 418K |
| totalNonCurrentAssets | 125.28M | 124.8M | 108.18M | 106.73M | 107.98M | 106.66M | 105.15M | 106.99M | 109.03M | 110.5M |
| otherAssets | - | - | - | - | - | - | - | - | - | - |
| totalAssets | 242.35M | 228.13M | 219.69M | 219.92M | 223.59M | 209.55M | 220.65M | 225.7M | 212.27M | 213.38M |
| totalPayables | 17.7M | 14.92M | 20.73M | 22.63M | 28.29M | 17.12M | 25.01M | 29.46M | 24.26M | 23.96M |
| accountPayables | 17.7M | 14.92M | 20.73M | 22.63M | 28.29M | 17.12M | 25.01M | 29.46M | 24.26M | 23.96M |
| otherPayables | - | - | - | - | - | - | - | - | - | - |
| accruedExpenses | 7.72M | 7.17M | 6.35M | 6.78M | 7.1M | 7.91M | 8.58M | 6.75M | 5.41M | 10.5M |
| shortTermDebt | 2.23M | 2.08M | 3.47M | 1.81M | 1.81M | 1.81M | 1.81M | 1.78M | 1.62M | 1.47M |
| capitalLeaseObligationsCurrent | - | - | - | - | - | - | - | - | - | 1.98M |
| taxPayables | - | - | - | - | - | - | - | - | - | - |
| deferredRevenue | 15.59M | 5.02M | 3.95M | 2.13M | 3.08M | 2.29M | 4.7M | 5.89M | 4.22M | 5.2M |
| otherCurrentLiabilities | 5.26M | 4.99M | 3.9M | 6.33M | 6.01M | 7.58M | 7.78M | 8.15M | 6.71M | 3.08M |
| totalCurrentLiabilities | 48.5M | 34.17M | 38.39M | 39.68M | 46.29M | 36.71M | 47.88M | 52.03M | 42.22M | 46.19M |
| longTermDebt | 30.56M | 30.75M | 18.24M | 18.8M | 19.25M | 19.71M | 20.16M | 20.6M | 21.06M | 21.52M |
| capitalLeaseObligationsNonCurrent | - | - | 2.71M | - | - | - | - | - | - | 1.83M |
| deferredRevenueNonCurrent | - | - | - | - | - | - | - | - | - | -1.14M |
| deferredTaxLiabilitiesNonCurrent | - | 1.03M | - | - | - | - | - | - | - | 1.14M |
| otherNonCurrentLiabilities | 5.06M | 4M | 4.92M | 7.98M | 8.18M | 5.77M | 4.77M | 5.56M | 6.17M | 4.89M |
| totalNonCurrentLiabilities | 35.62M | 35.79M | 25.87M | 26.78M | 27.43M | 25.48M | 24.93M | 26.17M | 27.23M | 28.24M |
| otherLiabilities | - | - | - | - | - | - | - | - | - | - |
| capitalLeaseObligations | - | - | 2.71M | - | - | - | - | - | - | 3.81M |
| totalLiabilities | 84.13M | 69.96M | 64.26M | 66.46M | 73.72M | 62.19M | 72.81M | 78.19M | 69.45M | 74.42M |
| treasuryStock | -40.99M | -39.92M | -38.99M | -38.99M | -37.32M | -36.14M | -35.57M | -33.58M | -32.11M | -31.77M |
| preferredStock | - | - | - | - | - | - | - | - | - | - |
| commonStock | 86000 | 85000 | 86000 | 86000 | 86000 | 86000 | 87000 | 88000 | 87000 | 86000 |
| retainedEarnings | 147.17M | 146.56M | 143.48M | 141.6M | 137.55M | 135.37M | 135.41M | 132.25M | 125.83M | 122.07M |
| additionalPaidInCapital | 48M | 47.5M | 47.36M | 46.88M | 46.39M | 45.76M | 45.33M | 44.77M | 44M | 43.26M |
| date | 2026-03-31 | 2025-12-31 | 2025-09-30 | 2025-06-30 | 2025-03-31 | 2024-12-31 | 2024-09-30 | 2024-06-30 | 2024-03-31 | 2023-12-31 |
|---|---|---|---|---|---|---|---|---|---|---|
| netIncome | 605K | 3.08M | 1.88M | 4.05M | 2.18M | -39000 | 3.16M | 6.42M | 3.76M | 2.18M |
| depreciationAndAmortization | 3.06M | 2.84M | 3.11M | 3.18M | 3.21M | 3.38M | 3.29M | 3.44M | 3.29M | 3.34M |
| deferredIncomeTax | - | -830K | - | - | - | 473K | - | - | - | - |
| stockBasedCompensation | 495K | 142K | 521K | 494K | 631K | 428K | 562K | 766K | 739K | 700K |
| changeInWorkingCapital | -13.57M | -517K | -874K | -3.8M | -145K | 872K | 1.3M | 4.4M | -2.5M | 261K |
| accountsReceivables | -22.66M | 4.05M | 2.92M | -1.05M | -6.62M | 6.66M | 10.21M | -6.91M | 1.63M | 4.23M |
| inventory | -2.72M | 86000 | -445K | -61000 | -949K | 2.34M | 1.08M | 2.1M | -1.8M | 2.92M |
| accountsPayables | 3.73M | -6.51M | -1.8M | -5.06M | 10.91M | -7.84M | -5.43M | 4.88M | 280K | -4.5M |
| otherWorkingCapital | 8.08M | 1.86M | -1.55M | 2.37M | -3.48M | -294K | -4.56M | 4.33M | -2.62M | -2.39M |
| otherNonCashItems | 186K | 297K | -65000 | -432K | 216K | -126K | 912K | 849K | -214K | 2.21M |
| netCashProvidedByOperatingActivities | -9.23M | 5.02M | 4.57M | 3.5M | 6.1M | 4.99M | 9.22M | 15.87M | 5.07M | 8.69M |
| investmentsInPropertyPlantAndEquipment | -3.78M | -7.96M | -4.92M | -2.62M | -1.77M | -4.48M | -2.24M | -2.91M | -1.89M | -2.3M |
| acquisitionsNet | - | - | - | - | - | - | - | - | - | - |
| purchasesOfInvestments | - | - | - | - | - | - | - | - | - | - |
| salesMaturitiesOfInvestments | - | - | - | - | - | - | - | - | - | - |
| otherInvestingActivities | - | - | - | - | - | - | - | - | - | - |
| netCashProvidedByInvestingActivities | -3.78M | -7.96M | -4.92M | -2.62M | -1.77M | -4.48M | -2.24M | -2.91M | -1.89M | -2.3M |
| netDebtIssuance | -469K | -469K | -469K | -471K | -478K | -477K | -426K | -323K | -322K | -327K |
| longTermNetDebtIssuance | -469K | -469K | -469K | -471K | -478K | -477K | -426K | -323K | -322K | 1.54M |
| shortTermNetDebtIssuance | - | - | - | - | - | - | - | - | - | -1.86M |
| netStockIssuance | -457K | 2.25M | - | -1.33M | -916K | -576K | -1.97M | -393K | -343K | - |
| netCommonStockIssuance | -457K | 2.25M | - | -1.33M | -916K | -576K | -1.97M | -393K | -343K | - |
| commonStockIssuance | - | - | - | - | - | - | - | - | - | - |
| commonStockRepurchased | -457K | 2.25M | - | -1.33M | -916K | -576K | -1.97M | -393K | -343K | - |
| netPreferredStockIssuance | - | - | - | - | - | - | - | - | - | - |
| netDividendsPaid | - | - | - | - | - | - | - | - | - | - |
| commonDividendsPaid | - | - | - | - | - | - | - | - | - | - |
| preferredDividendsPaid | - | - | - | - | - | - | - | - | - | - |
| otherFinancingActivities | -612K | -3.18M | - | -338K | -262K | -1000 | -22000 | -1.07M | - | - |
| netCashProvidedByFinancingActivities | -1.54M | -1.4M | -469K | -2.14M | -1.66M | -1.05M | -2.42M | -1.79M | -665K | -327K |