-$1.11 (-3.45%)
| 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 | 212.5M | 186.82M | 160.12M | 141.57M | 119.06M | 102.03M | 93.66M | 103.35M | 118.89M | 123.88M |
| costOfRevenue | 154.29M | 138.25M | 117.68M | 114.78M | 90.36M | 75.09M | 71.51M | 77.49M | 88.2M | 88.85M |
| grossProfit | 58.21M | 48.57M | 42.44M | 26.79M | 28.71M | 26.93M | 22.15M | 25.86M | 30.7M | 35.03M |
| researchAndDevelopmentExpenses | - | - | - | - | - | - | - | - | - | - |
| generalAndAdministrativeExpenses | 21.6M | 19.44M | 13.13M | 12.59M | 11.61M | 11.66M | 12.83M | 13.62M | 13.96M | 13.78M |
| sellingAndMarketingExpenses | 19.89M | 14.74M | 11.78M | 11.3M | 11.1M | 10.2M | 11.06M | 13.48M | 16.6M | 14.47M |
| sellingGeneralAndAdministrativeExpenses | 41.49M | 34.18M | 24.91M | 23.9M | 22.71M | 21.86M | 23.89M | 27.09M | 30.55M | 28.25M |
| otherExpenses | 540K | 540K | 540K | 540K | 122K | 152K | 192K | 16000 | 2000 | 71000 |
| operatingExpenses | 42.03M | 34.72M | 25.45M | 24.44M | 22.83M | 22.01M | 24.08M | 27.72M | 31.22M | 28.95M |
| costAndExpenses | 196.32M | 172.97M | 143.13M | 139.22M | 113.18M | 97.1M | 95.6M | 105.22M | 119.42M | 117.79M |
| netInterestIncome | -77000 | -105K | -384K | -267K | -116K | -118K | -249K | -271K | -242K | -220K |
| interestIncome | - | - | - | - | - | - | - | - | - | - |
| interestExpense | 77000 | 105K | 384K | 267K | 116K | 118K | 249K | 271K | 242K | 220K |
| depreciationAndAmortization | 3.98M | 3.39M | 3.16M | 2.97M | 2.87M | 3.24M | 3.34M | 3.48M | 3.11M | 3.02M |
| ebitda | 23.74M | 17.46M | 20.2M | 5.08M | 8.6M | 8.18M | 4.82M | 437K | 2.55M | 8.88M |
| ebit | 19.76M | 14.07M | 17.03M | 2.11M | 5.73M | 4.95M | 1.48M | -3.04M | -562K | 5.86M |
| nonOperatingIncomeExcludingInterest | -3.59M | -222K | -38000 | 241K | 148K | -23000 | -3.42M | -70000 | 36000 | 228K |
| operatingIncome | 16.17M | 13.85M | 17M | 2.35M | 5.88M | 4.92M | -1.93M | -3.11M | -526K | 6.08M |
| totalOtherIncomeExpensesNet | 3.51M | 117K | -346K | -508K | -264K | -95000 | 3.17M | -201K | -278K | -448K |
| incomeBeforeTax | 19.69M | 13.97M | 16.65M | 1.84M | 5.62M | 4.83M | 1.24M | -3.31M | -804K | 5.64M |
| incomeTaxExpense | 5.83M | 4.94M | 5.28M | 917K | 2.3M | 1.6M | 782K | -225K | -458K | 2.16M |
| netIncomeFromContinuingOperations | 13.86M | 9.02M | 11.37M | 924K | 3.31M | 3.23M | 453K | -3.09M | -346K | 3.48M |
| netIncomeFromDiscontinuedOperations | - | - | - | - | - | - | - | - | - | - |
| otherAdjustmentsToNetIncome | - | - | - | - | - | - | - | - | - | - |
| netIncome | 13.86M | 9.02M | 11.37M | 924K | 3.31M | 3.23M | 453K | -3.09M | -346K | 3.48M |
| netIncomeDeductions | - | - | - | - | - | - | - | - | - | - |
| bottomLineNetIncome | 13.86M | 9.02M | 11.37M | 924K | 3.31M | 3.23M | 453K | -3.09M | -346K | 3.48M |
| eps | 0.91 | 0.61 | 0.78 | 0.06 | 0.21 | 0.21 | 0.03 | -0.19 | -0.02 | 0.22 |
| 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 | 5.57M | 16.73M | 13.2M | 4.44M | 9.23M | 7.93M | 3.84M | 3M | 4.98M | 8.81M |
| shortTermInvestments | - | - | - | - | - | - | - | - | - | - |
| cashAndShortTermInvestments | 5.57M | 16.73M | 13.2M | 4.44M | 9.23M | 7.93M | 3.84M | 3M | 4.98M | 8.81M |
| netReceivables | 16.64M | 16.06M | 13.88M | 11.41M | 10.27M | 8.03M | 7.37M | 9.02M | 11.02M | 9.9M |
| accountsReceivables | 16.64M | 15.42M | 13.88M | 11.41M | 9.93M | 8M | 6.69M | 6.28M | 8.68M | 9.59M |
| otherReceivables | - | 631K | - | - | 344K | 30999 | 681K | 2.75M | 2.35M | 309K |
| inventory | 11.89M | 8.68M | 9.1M | 9.63M | 8.28M | 6.93M | 6.39M | 5.82M | 7.7M | 8.04M |
| prepaids | - | - | - | 1.44M | - | - | - | 1.08M | 983K | 785K |
| otherCurrentAssets | 2.95M | 2.14M | 2.02M | 44000 | 1.25M | 1.16M | 1.6M | - | - | - |
| totalCurrentAssets | 37.06M | 43.6M | 38.2M | 26.98M | 29.05M | 24.05M | 19.2M | 18.92M | 24.68M | 28.2M |
| propertyPlantEquipmentNet | 48.75M | 26.98M | 22.96M | 21.08M | 20.35M | 21.39M | 23.01M | 24.57M | 24.64M | 21.83M |
| goodwill | 11.7M | 11.7M | 11.7M | 11.7M | 11.7M | 10.3M | 9.12M | 9.12M | 10.37M | 10.37M |
| intangibleAssets | 5.82M | 6.36M | 6.9M | 7.44M | 7.98M | 3.7M | 3.85M | 4.04M | 4.68M | 5.35M |
| goodwillAndIntangibleAssets | 17.52M | 18.06M | 18.6M | 19.14M | 19.68M | 14M | 12.98M | 13.17M | 15.04M | 15.72M |
| longTermInvestments | - | 1.8M | 6.9M | 1.8M | - | - | - | -390K | -840K | -662K |
| taxAssets | - | - | 987K | - | 673K | 804K | 1.56M | 390K | 840K | 662K |
| otherNonCurrentAssets | 2.28M | 100000 | -5M | - | 1.8M | 1.8M | 1.8M | 150K | 150K | 125K |
| totalNonCurrentAssets | 68.55M | 46.94M | 44.44M | 42.02M | 42.5M | 38M | 39.35M | 37.89M | 39.84M | 37.67M |
| otherAssets | - | - | - | - | - | - | - | - | - | - |
| totalAssets | 105.61M | 90.55M | 82.64M | 69M | 71.55M | 62.05M | 58.54M | 56.81M | 64.52M | 65.88M |
| totalPayables | 11.23M | 10.4M | 10.45M | 8.37M | 7.34M | 6.24M | 5.44M | 5.07M | 7.05M | 6.37M |
| accountPayables | 11.01M | 10.4M | 9.98M | 7.98M | 6.61M | 5.59M | 5.28M | 4.57M | 6.85M | 5.72M |
| otherPayables | 218K | - | 474K | 394K | 725K | 653K | 154K | 504K | 203K | 654K |
| accruedExpenses | 4.39M | 4.19M | 4.84M | 3.35M | 2.95M | 1.37M | 3.01M | 1.94M | 2.61M | 215K |
| shortTermDebt | 106K | - | 1.25M | 1.25M | 1.13M | 179K | 285K | - | 3.17M | 840K |
| capitalLeaseObligationsCurrent | - | 47000 | 74000 | 70000 | - | - | - | - | - | - |
| taxPayables | 325K | 468K | 474K | - | 725K | 653K | 154K | 504K | 2.78M | 1.05M |
| deferredRevenue | - | - | - | - | - | - | - | - | 2.78M | 1.05M |
| otherCurrentLiabilities | 921K | 868K | - | - | 642K | 651K | 793K | 442K | 371K | 1.95M |
| totalCurrentLiabilities | 16.64M | 15.5M | 16.62M | 13.04M | 12.06M | 8.44M | 9.52M | 7.45M | 13.2M | 9.38M |
| longTermDebt | - | - | 1.48M | 5.25M | 6.25M | 2.77M | 2.74M | 6M | 3.11M | 6.28M |
| capitalLeaseObligationsNonCurrent | 360K | 70000 | 118K | 104K | 85000 | 165K | 488K | - | - | - |
| deferredRevenueNonCurrent | - | - | - | - | - | - | - | - | - | -1.19M |
| deferredTaxLiabilitiesNonCurrent | 2.79M | 3.06M | 3.99M | - | 3.87M | 3.75M | 2.48M | 390K | 840K | 1.85M |
| otherNonCurrentLiabilities | - | - | - | 3.03M | 147K | 76999 | 58000 | 564K | 775K | - |
| totalNonCurrentLiabilities | 3.15M | 3.13M | 5.59M | 8.39M | 10.35M | 6.76M | 5.77M | 6.95M | 4.73M | 8.13M |
| otherLiabilities | - | - | - | - | - | - | - | - | - | - |
| capitalLeaseObligations | 360K | 117K | 192K | 174K | 85000 | 165K | 488K | - | - | - |
| totalLiabilities | 19.79M | 18.64M | 22.2M | 21.43M | 22.42M | 15.2M | 15.29M | 14.4M | 17.93M | 17.51M |
| treasuryStock | -13.21M | -14.05M | -16.7M | -16.99M | -13.44M | -12.45M | -12.6M | -12.97M | -11.81M | -10.34M |
| preferredStock | - | - | - | - | - | - | - | - | - | - |
| commonStock | 6.51M | 6.51M | 6.51M | 6.51M | 6.51M | 6.51M | 6.51M | 6.51M | 6.51M | 6.51M |
| retainedEarnings | 88.68M | 74.82M | 65.8M | 54.43M | 53.51M | 50.2M | 46.96M | 46.56M | 49.65M | 50M |
| additionalPaidInCapital | 3.84M | 4.63M | 4.82M | 3.62M | 2.55M | 2.6M | 2.38M | 2.3M | 2.24M | 2.2M |
| 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 | 13.86M | 9.02M | 11.37M | 924K | 3.31M | 3.23M | 453K | -3.09M | -346K | 3.48M |
| depreciationAndAmortization | 3.98M | 3.39M | 3.16M | 2.97M | 2.87M | 3.24M | 3.34M | 3.48M | 3.11M | 3.02M |
| deferredIncomeTax | -270K | 61000 | -28000 | -172K | 257K | 841K | 533K | -451K | -352K | -531K |
| stockBasedCompensation | 1.95M | 2.45M | 1.5M | 1.11M | 1.14M | 393K | 838K | 802K | 596K | 326K |
| changeInWorkingCapital | -5.16M | -1.98M | 969K | -1.06M | -2.09M | -1.24M | 2.12M | -11000 | -94000 | -1.69M |
| accountsReceivables | -913K | -2.18M | -2.42M | -1.18M | -2.24M | -655K | -423K | 2.38M | 780K | 292K |
| inventory | -3.21M | 426K | 527K | -1.34M | -1.36M | -538K | -523K | 1.32M | -29000 | -579K |
| accountsPayables | 238K | 156K | 1.86M | 1.94M | 1.02M | 311K | 710K | -2.28M | 1.13M | -2.67M |
| otherWorkingCapital | -1.27M | -382K | 1M | -482K | 485K | -355K | 2.35M | -1.43M | -1.98M | 1.27M |
| otherNonCashItems | -3.41M | 25000 | -26000 | 219K | 72000 | -83000 | -3.47M | 1.69M | 892K | 499K |
| netCashProvidedByOperatingActivities | 10.95M | 12.96M | 16.94M | 3.99M | 5.56M | 6.38M | 3.81M | 2.42M | 3.81M | 5.1M |
| investmentsInPropertyPlantAndEquipment | -27.36M | -6.7M | -4.35M | -3.45M | -1.92M | -1.9M | -1.18M | -2.82M | -5.34M | -3.24M |
| acquisitionsNet | - | - | - | -580K | -5.22M | - | 522K | 104K | 50000 | -341K |
| purchasesOfInvestments | - | - | -100000 | - | - | - | -15000 | -500K | -25000 | -559K |
| salesMaturitiesOfInvestments | 5.21M | - | - | - | - | - | 1.51M | 500K | - | 3.26M |
| otherInvestingActivities | 115K | 15000 | 41000 | - | - | 5000 | - | 104K | 50000 | 513K |
| netCashProvidedByInvestingActivities | -22.04M | -6.68M | -4.41M | -4.03M | -7.14M | -1.89M | 838K | -2.72M | -5.32M | -360K |
| netDebtIssuance | - | -2.75M | -3.78M | -750K | 4.5M | - | -3.27M | -298K | -840K | -840K |
| longTermNetDebtIssuance | - | -2.75M | -3.78M | -750K | 4.5M | - | - | -229K | -840K | -840K |
| shortTermNetDebtIssuance | - | - | - | - | - | - | -3.27M | -69000 | - | - |
| netStockIssuance | - | - | - | -4M | -1.58M | -405K | -538K | -1.38M | -1.49M | -738K |
| netCommonStockIssuance | - | - | - | -4M | -1.58M | -405K | -538K | -1.38M | -1.49M | -738K |
| commonStockIssuance | - | - | - | - | - | - | - | - | - | - |
| commonStockRepurchased | - | - | - | -4M | -1.58M | -405K | -538K | -1.38M | -1.49M | -738K |
| netPreferredStockIssuance | - | - | - | - | - | - | - | - | - | - |
| netDividendsPaid | - | - | - | - | - | - | - | - | - | - |
| commonDividendsPaid | - | - | - | - | - | - | - | - | - | - |
| preferredDividendsPaid | - | - | - | - | - | - | - | - | - | - |
| otherFinancingActivities | -65000 | - | - | - | -32000 | - | - | - | - | - |
| netCashProvidedByFinancingActivities | -65000 | -2.75M | -3.78M | -4.75M | 2.88M | -405K | -3.81M | -1.68M | -2.33M | -1.58M |
| 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 | 63.01M | 55.36M | 57.14M | 53.9M | 46.09M | 46.93M | 46.1M | 49.16M | 44.63M | 42.09M |
| costOfRevenue | 45.66M | 40M | 39.82M | 38.5M | 35.06M | 35.04M | 34.23M | 36.02M | 33.23M | 30.44M |
| grossProfit | 17.35M | 15.36M | 17.32M | 15.4M | 11.04M | 11.9M | 11.87M | 13.14M | 11.4M | 11.66M |
| researchAndDevelopmentExpenses | - | - | - | - | - | - | - | - | - | - |
| generalAndAdministrativeExpenses | 4.7M | 6.04M | 6.19M | 4.75M | 4.63M | 7.56M | 3.56M | 4.18M | 4.14M | 3.1M |
| sellingAndMarketingExpenses | 6.19M | 5.43M | 5.05M | 4.72M | 4.7M | 3.49M | 3.98M | 3.58M | 3.7M | 2.8M |
| sellingGeneralAndAdministrativeExpenses | 10.89M | 11.46M | 11.23M | 9.47M | 9.33M | 11.05M | 7.54M | 7.75M | 7.84M | 5.9M |
| otherExpenses | 135K | 135K | 1.05M | 135K | 135K | 135K | 135K | - | - | - |
| operatingExpenses | 11.03M | 11.6M | 12.28M | 9.6M | 9.46M | 11.18M | 7.68M | 7.75M | 7.84M | 5.9M |
| costAndExpenses | 56.69M | 51.6M | 52.1M | 48.11M | 44.52M | 46.22M | 41.91M | 43.77M | 41.07M | 36.34M |
| netInterestIncome | 68000 | -21000 | -21000 | -21000 | -14000 | -3000 | -4000 | -47000 | -51000 | -62000 |
| interestIncome | - | - | - | - | - | - | - | - | - | - |
| interestExpense | -68000 | 21000 | 21000 | 21000 | 14000 | 3000 | 4000 | 47000 | 51000 | 62000 |
| depreciationAndAmortization | 1.06M | 1.03M | 1.05M | 967K | 937K | 899K | 855K | 836K | 796K | 804K |
| ebitda | 7.24M | 4.76M | 6.16M | 6.9M | 5.92M | 1.68M | 5.18M | 6.24M | 4.36M | 6.56M |
| ebit | 6.19M | 3.74M | 5.11M | 5.93M | 4.98M | 779K | 4.33M | 5.41M | 3.56M | 5.76M |
| nonOperatingIncomeExcludingInterest | 136K | 25000 | -73000 | -137K | -3.41M | -66000 | -141K | -20000 | 5000 | -6000 |
| operatingIncome | 6.32M | 3.76M | 5.04M | 5.8M | 1.57M | 713K | 4.19M | 5.39M | 3.56M | 5.75M |
| totalOtherIncomeExpensesNet | -68000 | -46000 | 52000 | 116K | 3.39M | 63000 | 137K | -27000 | -56000 | -56000 |
| incomeBeforeTax | 6.26M | 3.72M | 5.09M | 5.91M | 4.97M | 776K | 4.33M | 5.36M | 3.51M | 5.7M |
| incomeTaxExpense | 1.58M | 1.18M | 1.56M | 1.66M | 1.43M | 936K | 1.35M | 1.58M | 1.08M | 1.73M |
| netIncomeFromContinuingOperations | 4.67M | 2.54M | 3.53M | 4.25M | 3.54M | -160K | 2.98M | 3.78M | 2.43M | 3.97M |
| netIncomeFromDiscontinuedOperations | - | - | - | - | - | - | - | - | - | - |
| otherAdjustmentsToNetIncome | - | - | - | - | - | - | - | - | - | - |
| netIncome | 4.67M | 2.54M | 3.53M | 4.25M | 3.54M | -160K | 2.98M | 3.78M | 2.43M | 3.97M |
| netIncomeDeductions | - | - | - | - | - | - | - | - | - | - |
| bottomLineNetIncome | 4.67M | 2.54M | 3.53M | 4.25M | 3.54M | -160K | 2.98M | 3.78M | 2.43M | 3.97M |
| eps | 0.31 | 0.17 | 0.23 | 0.28 | 0.24 | -0.01 | 0.2 | 0.26 | 0.17 | 0.27 |
| 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 | 5.6M | 5.57M | 22.99M | 21.22M | 19.45M | 16.73M | 20.56M | 14.63M | 12.02M | 13.2M |
| shortTermInvestments | - | - | - | - | - | - | - | - | - | - |
| cashAndShortTermInvestments | 5.6M | 5.57M | 22.99M | 21.22M | 19.45M | 16.73M | 20.56M | 14.63M | 12.02M | 13.2M |
| netReceivables | 23.03M | 16.64M | 17.42M | 16.06M | 16.68M | 16.06M | 13.87M | 14.71M | 15.44M | 13.88M |
| accountsReceivables | 22.98M | 16.64M | 17.42M | 16.06M | 16.68M | 15.42M | 13.5M | 14.53M | 15.06M | 13.88M |
| otherReceivables | 41000 | - | - | - | - | 631K | 379K | 180K | 378K | - |
| inventory | 11.45M | 11.89M | 11.06M | 10.22M | 9.24M | 8.68M | 8.44M | 8.45M | 8.13M | 9.1M |
| prepaids | - | - | 2.02M | - | - | - | - | - | - | - |
| otherCurrentAssets | 2.59M | 2.95M | 318K | 1.82M | 2.01M | 2.14M | 1.89M | 1.49M | 1.99M | 2.02M |
| totalCurrentAssets | 42.67M | 37.06M | 53.81M | 49.33M | 47.38M | 43.6M | 44.77M | 39.28M | 37.58M | 38.2M |
| propertyPlantEquipmentNet | 58.4M | 48.75M | 36.78M | 31.01M | 28.22M | 26.98M | 26.45M | 25.43M | 24.8M | 22.96M |
| goodwill | 11.7M | 11.7M | 11.7M | 11.7M | 11.7M | 11.7M | 11.7M | 11.7M | 11.7M | 11.7M |
| intangibleAssets | 5.68M | 5.82M | 5.95M | 6.09M | 6.22M | 6.36M | 6.49M | 6.63M | 6.76M | 6.9M |
| goodwillAndIntangibleAssets | 17.39M | 17.52M | 17.66M | 17.79M | 17.93M | 18.06M | 18.2M | 18.33M | 18.47M | 18.6M |
| longTermInvestments | - | - | - | - | 141K | 1.8M | - | - | - | 6.9M |
| taxAssets | - | - | - | - | - | - | - | - | - | 987K |
| otherNonCurrentAssets | 2.05M | 2.28M | 1.28M | 135K | - | 100000 | 1.9M | 1.9M | 1.9M | -5M |
| totalNonCurrentAssets | 77.84M | 68.55M | 55.72M | 48.94M | 46.29M | 46.94M | 46.54M | 45.66M | 45.17M | 44.44M |
| otherAssets | - | - | - | - | - | - | - | - | - | - |
| totalAssets | 120.5M | 105.61M | 109.53M | 98.27M | 93.67M | 90.55M | 91.31M | 84.94M | 82.75M | 82.64M |
| totalPayables | 15.36M | 11.23M | 18.15M | 12.39M | 12.43M | 10.4M | 11.53M | 9.37M | 10.37M | 10.45M |
| accountPayables | 13.84M | 11.01M | 17.5M | 11.88M | 11.64M | 10.4M | 11.12M | 9.37M | 10.02M | 9.98M |
| otherPayables | 1.52M | 218K | 650K | 507K | 795K | - | 410K | - | 343K | 474K |
| accruedExpenses | 3.42M | 4.39M | 5.19M | 3.84M | 2.9M | 4.19M | 5.12M | 3.31M | 3.19M | 4.84M |
| shortTermDebt | 127K | 106K | - | - | 41000 | - | - | - | 1.25M | 1.25M |
| capitalLeaseObligationsCurrent | - | - | 69000 | 58000 | - | 47000 | 57000 | 66000 | 71000 | 74000 |
| taxPayables | 41000 | 325K | - | 507K | 1.16M | 468K | 410K | 479K | 343K | 474K |
| deferredRevenue | - | - | - | - | - | - | - | - | - | - |
| otherCurrentLiabilities | 1.05M | 921K | - | - | 996K | 868K | - | 1.11M | - | - |
| totalCurrentLiabilities | 19.95M | 16.64M | 23.41M | 16.29M | 16.37M | 15.5M | 16.71M | 13.86M | 14.88M | 16.62M |
| longTermDebt | 6.94M | - | - | - | - | - | - | - | 1.24M | 1.48M |
| capitalLeaseObligationsNonCurrent | 426K | 360K | 289K | 220K | 68000 | 70000 | 79000 | 88000 | 102K | 118K |
| deferredRevenueNonCurrent | - | - | - | - | - | - | - | - | - | - |
| deferredTaxLiabilitiesNonCurrent | 2.79M | 2.79M | - | 3.06M | 3.06M | 3.06M | 3M | 3M | 3M | 3.99M |
| otherNonCurrentLiabilities | 73999 | - | 3.06M | - | - | - | - | - | - | - |
| totalNonCurrentLiabilities | 10.23M | 3.15M | 3.35M | 3.28M | 3.13M | 3.13M | 3.08M | 3.09M | 4.34M | 5.59M |
| otherLiabilities | - | - | - | - | - | - | - | - | - | - |
| capitalLeaseObligations | 426K | 360K | 358K | 278K | 68000 | 117K | 136K | 154K | 173K | 192K |
| totalLiabilities | 30.18M | 19.79M | 26.76M | 19.57M | 19.5M | 18.64M | 19.79M | 16.95M | 19.22M | 22.2M |
| treasuryStock | -12.89M | -13.21M | -13.23M | -13.27M | -13.38M | -14.05M | -15.88M | -16.05M | -16.7M | -16.7M |
| preferredStock | - | - | - | - | - | - | - | - | - | - |
| commonStock | 6.51M | 6.51M | 6.51M | 6.51M | 6.51M | 6.51M | 6.51M | 6.51M | 6.51M | 6.51M |
| retainedEarnings | 93.36M | 88.68M | 86.14M | 82.61M | 78.36M | 74.82M | 74.98M | 72.01M | 68.22M | 65.8M |
| additionalPaidInCapital | 3.35M | 3.84M | 3.35M | 2.84M | 2.68M | 4.63M | 5.92M | 5.53M | 5.5M | 4.82M |
| 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 | 4.67M | -11.32M | 3.53M | 4.25M | 3.54M | -160K | 2.98M | 3.78M | 2.43M | 3.97M |
| depreciationAndAmortization | 1.06M | -2.95M | 1.05M | 967K | 937K | 899K | 855K | 836K | 796K | 804K |
| deferredIncomeTax | - | - | - | - | - | - | - | - | - | - |
| stockBasedCompensation | 548K | -1.47M | 539K | 601K | 326K | 548K | 602K | 623K | 673K | 419K |
| changeInWorkingCapital | -1.99M | -3.59M | 1.8M | -1.74M | -1.62M | -3.94M | 3.02M | 1.29M | -2.35M | -367K |
| accountsReceivables | -6.15M | 587K | -1.49M | 619K | -628K | -2.18M | 831K | 736K | -1.57M | -520K |
| inventory | 438K | -834K | -832K | -983K | -563K | -237K | 13000 | -324K | 974K | 217K |
| accountsPayables | 3.4M | -3.09M | 2.83M | -901K | 1.4M | -793K | 1.52M | -568K | -6000 | 931K |
| otherWorkingCapital | 320K | -254K | 1.29M | -476K | -1.83M | -727K | 654K | 1.44M | -1.75M | -995K |
| otherNonCashItems | 71000 | 19.6M | 5000 | -164K | -3.33M | 72000 | -3000 | 15000 | 2000 | -28000 |
| netCashProvidedByOperatingActivities | 4.36M | 267K | 6.92M | 3.91M | -150K | -2.58M | 7.45M | 6.54M | 1.55M | 4.8M |
| investmentsInPropertyPlantAndEquipment | -11.04M | 9.68M | -5.15M | -2.31M | -2.22M | -1.25M | -1.54M | -1.44M | -2.47M | -1.2M |
| acquisitionsNet | - | 115K | - | - | - | - | - | - | - | - |
| purchasesOfInvestments | - | - | - | - | - | - | - | - | - | - |
| salesMaturitiesOfInvestments | - | -1.8M | - | 54000 | 5.15M | - | - | - | - | - |
| otherInvestingActivities | - | -25.68M | - | 115K | - | 1000 | 14000 | - | - | 1000 |
| netCashProvidedByInvestingActivities | -11.04M | -17.69M | -5.15M | -2.14M | 2.93M | -1.25M | -1.53M | -1.44M | -2.47M | -1.2M |
| netDebtIssuance | 7M | - | - | - | - | - | - | -2.5M | -250K | -3.03M |
| longTermNetDebtIssuance | 7M | - | - | - | - | - | - | -2.5M | -250K | -3.03M |
| shortTermNetDebtIssuance | - | - | - | - | - | - | - | - | - | - |
| netStockIssuance | - | - | - | - | - | - | - | - | - | - |
| netCommonStockIssuance | - | - | - | - | - | - | - | - | - | - |
| commonStockIssuance | - | - | - | - | - | - | - | - | - | - |
| commonStockRepurchased | - | - | - | - | - | - | - | - | - | - |
| netPreferredStockIssuance | - | - | - | - | - | - | - | - | - | - |
| netDividendsPaid | - | - | - | - | - | - | - | - | - | - |
| commonDividendsPaid | - | - | - | - | - | - | - | - | - | - |
| preferredDividendsPaid | - | - | - | - | - | - | - | - | - | - |
| otherFinancingActivities | -283K | - | - | - | -65000 | - | - | - | - | - |
| netCashProvidedByFinancingActivities | 6.72M | - | - | - | -65000 | - | - | -2.5M | -250K | -3.03M |