$0.11 (2.08%)
| 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 | 159.32M | 94.54M | 63.71M | 58.71M | 63.14M | 55.83M | 59.95M | 43.26M | 48.45M | 52.59M |
| costOfRevenue | 78.31M | 54.98M | 49.65M | 50.84M | 43.81M | 39.29M | 46.23M | 40.38M | 43.43M | 41.29M |
| grossProfit | 81M | 39.55M | 14.05M | 7.87M | 19.33M | 16.54M | 13.72M | 2.88M | 5.02M | 11.3M |
| researchAndDevelopmentExpenses | - | - | - | - | - | - | - | - | - | - |
| generalAndAdministrativeExpenses | 11.03M | 7.44M | 6.49M | 5.45M | 5.83M | 5.86M | 5.26M | 5.54M | 5.5M | 4.96M |
| sellingAndMarketingExpenses | - | - | - | - | - | - | - | - | - | - |
| sellingGeneralAndAdministrativeExpenses | 11.03M | 7.44M | 6.49M | 5.45M | 5.83M | 5.86M | 5.26M | 5.54M | 5.5M | 4.96M |
| otherExpenses | 635.84K | 523.47K | 16378 | 249.21K | 270.63K | 533.26K | 261.94K | 329.62K | 381.36K | 350.9K |
| operatingExpenses | 11.67M | 7.97M | 6.51M | 5.7M | 6.1M | 6.39M | 5.52M | 5.87M | 5.88M | 5.31M |
| costAndExpenses | 89.98M | 62.95M | 56.16M | 56.53M | 49.91M | 45.68M | 51.75M | 46.25M | 49.31M | 46.6M |
| netInterestIncome | 510.1K | -175.26K | -426.14K | -3.29M | 364.48K | -1.76M | -1.93M | -1.32M | -839.06K | -1.38M |
| interestIncome | 995.66K | 499.14K | 313.11K | 126.39K | 417.4K | 911 | 2325 | 543.15K | 135 | 573 |
| interestExpense | 485.56K | 674.4K | 739.24K | 3.41M | 71356 | 1.61M | 1.93M | 1.69M | 839.19K | 711.47K |
| depreciationAndAmortization | 9.97M | 4.27M | 6.24M | 6.57M | 6.05M | 5.13M | 9.02M | 9.28M | 10.47M | 8.38M |
| ebitda | 79.3M | 37.22M | 15.15M | 9.21M | 19.48M | 15.23M | 17.15M | 6.14M | 9.37M | 14.37M |
| ebit | 69.33M | 32.95M | 8.91M | 2.64M | 13.43M | 10.1M | 8.12M | -3.14M | -1.1M | 2.58M |
| nonOperatingIncomeExcludingInterest | - | -1.36M | -1.36M | -423.82K | -353.92K | 290.44K | 238.8K | 433.17K | 403.61K | 3.44M |
| operatingIncome | 69.33M | 31.59M | 7.54M | 2.21M | 13.08M | 10.39M | 8.36M | -2.71M | -691.96K | 6.02M |
| totalOtherIncomeExpensesNet | 860.72K | 690.12K | 623.24K | -2.99M | 282.56K | -1.9M | -2.17M | -2.12M | -1.05M | -4.15M |
| incomeBeforeTax | 70.19M | 32.28M | 8.17M | -776.3K | 13.36M | 8.49M | 6.19M | -4.83M | -1.75M | 1.87M |
| incomeTaxExpense | 15.09M | 4.46M | 1.59M | 206.74K | 3.41M | 1.46M | 2.36M | 924.46K | 652.4K | -2.56M |
| netIncomeFromContinuingOperations | 55.11M | 27.82M | 6.58M | -983.05K | 9.95M | 7.03M | 3.83M | -5.75M | -2.4M | 4.43M |
| netIncomeFromDiscontinuedOperations | - | - | - | - | - | - | - | - | - | - |
| otherAdjustmentsToNetIncome | - | - | - | - | - | - | - | - | - | - |
| netIncome | 55.11M | 27.82M | 6.58M | -983.05K | 9.95M | 7.03M | 3.83M | -5.75M | -2.4M | 4.43M |
| netIncomeDeductions | - | - | - | - | - | - | - | - | - | - |
| bottomLineNetIncome | 55.11M | 27.82M | 6.58M | -983.05K | 9.95M | 7.03M | 3.83M | -5.75M | -2.4M | 4.43M |
| eps | 0.73 | 0.37 | 0.09 | -0.01 | 0.14 | 0.12 | 0.07 | -0.11 | -0.07 | 0.13 |
| 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 | 49.3M | 22.18M | 11.55M | 7.2M | 12.22M | 6.6M | 14.23M | 9.22M | 4.09M | 4.16M |
| shortTermInvestments | - | - | - | - | - | - | - | - | - | - |
| cashAndShortTermInvestments | 49.3M | 22.18M | 11.55M | 7.2M | 12.22M | 6.6M | 14.23M | 9.22M | 4.09M | 4.16M |
| netReceivables | 11.31M | 2.53M | 2.86M | 5.23M | 2.26M | 1.87M | 747.27K | 620.82K | 1.23M | 1.05M |
| accountsReceivables | 10.63M | 2.18M | 2.48M | 5.23M | 2.26M | 1.87M | 747.27K | 620.82K | 1.23M | 1.05M |
| otherReceivables | 679.08K | 351.28K | 379.69K | - | - | - | - | - | - | - |
| inventory | 16.21M | 13.12M | 12.8M | 8.71M | 6.97M | 6.98M | 6.58M | 8.51M | 6.93M | 8.11M |
| prepaids | 3.27M | 1.1M | 1.46M | 868.32K | 1M | 381.5K | 403.08K | 503.08K | 342.17K | 213.33K |
| otherCurrentAssets | - | 1.12M | 1.36M | 761.78K | 1.36M | 1.23M | 3.13M | 3.8M | 2.94M | 3.66M |
| totalCurrentAssets | 80.08M | 40.05M | 29.64M | 22.77M | 23.82M | 17.07M | 25.09M | 22.65M | 15.54M | 17.2M |
| propertyPlantEquipmentNet | 79.99M | 76.72M | 58.66M | 72.48M | 65.03M | 56.59M | 70.28M | 70.05M | 72.88M | 55.39M |
| goodwill | - | - | - | - | - | - | - | - | - | - |
| intangibleAssets | - | 18.84M | 20.5M | 18.62M | 34.86M | 27.78M | 29.66M | 27.71M | 23.9M | 9.99M |
| goodwillAndIntangibleAssets | - | 18.84M | 20.5M | 18.62M | 34.86M | 27.78M | 29.66M | 27.71M | 23.9M | 9.99M |
| longTermInvestments | - | - | - | -18.62M | -34.86M | -27.78M | -29.66M | -27.71M | -23.9M | - |
| taxAssets | 1.25M | 1.88M | 1.79M | 1.55M | 1.22M | 1.88M | 1.32M | 2.16M | 2.94M | 3.25M |
| otherNonCurrentAssets | 38.36M | -12.59M | 4.65M | 3.45M | 605.12K | 696.08K | 848.84K | 1.56M | 1.47M | -9.99M |
| totalNonCurrentAssets | 119.6M | 84.85M | 85.6M | 77.47M | 66.86M | 59.16M | 72.45M | 73.77M | 77.29M | 58.64M |
| otherAssets | - | - | - | - | - | - | - | - | - | - |
| totalAssets | 199.68M | 124.9M | 115.25M | 100.24M | 90.68M | 76.24M | 97.54M | 96.42M | 92.84M | 75.84M |
| totalPayables | 5.7M | 8.78M | 3.59M | 2.7M | 3.2M | 3.61M | 2.71M | 2.45M | 2.8M | 2.06M |
| accountPayables | 5.7M | 3.95M | 3.59M | 2.7M | 3.2M | 3.61M | 2.71M | 2.45M | 2.8M | 2.06M |
| otherPayables | - | 4.83M | - | - | - | - | - | - | - | - |
| accruedExpenses | 1.49M | - | 1.43M | 1.02M | 997.6K | 1.05M | 1.34M | 1.22M | 1.4M | 1.31M |
| shortTermDebt | 6.01M | 5.59M | 5.71M | 5M | - | 8.52M | 6.9M | 4.3M | 1.98M | 1.79M |
| capitalLeaseObligationsCurrent | - | 251.72K | 694.4K | 1.11M | 290.06K | 201.4K | 48850 | 375.6K | 865.71K | 1.18M |
| taxPayables | - | 3.72M | 3M | 1.46M | 875.44K | 1.65M | 762.6K | 669.69K | 790.15K | 1.09M |
| deferredRevenue | - | - | - | - | - | - | 319.67K | 763.3K | 1.32M | -3.84M |
| otherCurrentLiabilities | 10.27M | 1.34M | 4.26M | 2.57M | 1.83M | 2.87M | 14.39M | 13.22M | 7.47M | 1.99M |
| totalCurrentLiabilities | 23.47M | 15.96M | 15.68M | 12.4M | 6.31M | 16.26M | 25.39M | 22.34M | 14.52M | 8.32M |
| longTermDebt | - | - | - | - | - | - | - | 2.42M | 2.5M | - |
| capitalLeaseObligationsNonCurrent | 1.14M | 109.95K | 150.22K | 837.29K | 444.95K | 350.93K | - | 48850 | 249.41K | 77798 |
| deferredRevenueNonCurrent | - | - | - | - | - | - | - | - | - | - |
| deferredTaxLiabilitiesNonCurrent | - | - | - | 480.92K | 861.43K | 324.52K | - | - | - | - |
| otherNonCurrentLiabilities | 5.08M | 4.65M | 6.62M | 5.47M | 4.04M | 1.88M | 2.42M | 2.5M | 14.8M | 4.06M |
| totalNonCurrentLiabilities | 6.22M | 4.76M | 6.78M | 6.31M | 4.48M | 2.23M | 2.42M | 4.97M | 17.55M | 4.14M |
| otherLiabilities | - | - | - | - | - | - | - | - | - | - |
| capitalLeaseObligations | 1.14M | 361.67K | 844.62K | 1.95M | 735.01K | 552.33K | 48850 | 424.45K | 1.12M | 1.25M |
| totalLiabilities | 29.69M | 20.72M | 22.45M | 18.71M | 10.79M | 18.49M | 27.81M | 27.31M | 32.07M | 12.46M |
| treasuryStock | - | - | - | - | - | - | - | - | - | - |
| preferredStock | - | - | - | - | - | - | - | - | - | - |
| commonStock | 11.23M | 11.21M | 11.21M | 11.21M | 11.21M | 8.91M | 8.88M | 8.88M | 5.54M | 5.54M |
| retainedEarnings | 165.85M | 115.56M | 91.07M | 84.64M | 86.39M | 79.51M | 75.21M | 73.15M | 79.27M | 82.33M |
| additionalPaidInCapital | 36.22M | 36.16M | 36.16M | 36.16M | 36.16M | 21.91M | 21.75M | 21.75M | 1.72M | 1.72M |
| 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 | 53.91M | 27.82M | 6.58M | -983.05K | 9.95M | 7.03M | 3.83M | -5.75M | -2.4M | 4.43M |
| depreciationAndAmortization | 9.65M | 4.27M | 6.24M | 6.57M | 6.05M | 5.13M | 9.02M | 9.28M | 10.47M | 8.38M |
| deferredIncomeTax | 847.44K | - | - | - | 1.04M | 588.08K | 830.52K | -401.12K | 832.98K | -5.69M |
| stockBasedCompensation | 382K | 248.91K | 197.34K | 249.21K | 270.63K | 587.97K | 261.94K | 509.62K | 381.36K | 350.9K |
| changeInWorkingCapital | -8.59M | -2.79M | -27817 | -7.67M | -2.23M | -683.58K | 2.39M | -3.97M | -2.09M | 4.53M |
| accountsReceivables | -12.33M | -2.51M | 1.61M | -6.47M | -1.26M | -770.57K | -228.5K | -1.43M | -1.97M | 4.18M |
| inventory | -1.73M | -2.73M | -2.83M | -1.44M | -331.4K | -1.84M | 2.14M | -2.52M | -287.9K | 153.31K |
| accountsPayables | - | - | - | 6.47M | 1.26M | 770.57K | 228.5K | - | - | - |
| otherWorkingCapital | 5.47M | 2.44M | 1.19M | -6.23M | -1.9M | 1.16M | 242.29K | -1.45M | -1.8M | 4.37M |
| otherNonCashItems | 1.95M | 1.33M | -891.51K | 3.78M | -282.56K | 1.9M | 2.17M | 1.94M | 1.05M | 4.15M |
| netCashProvidedByOperatingActivities | 58.15M | 30.88M | 12.09M | 1.96M | 14.8M | 14.56M | 18.51M | 1.61M | 8.24M | 16.15M |
| investmentsInPropertyPlantAndEquipment | -31.02M | -18.95M | -7.38M | -11.26M | -18.09M | -9.89M | -12.98M | -15.02M | -6.51M | -5.93M |
| acquisitionsNet | 385.38K | - | - | - | -5.5M | -6.5M | - | -4.74M | -4.99M | - |
| purchasesOfInvestments | - | - | - | - | - | - | - | - | - | - |
| salesMaturitiesOfInvestments | - | - | - | - | - | - | - | - | - | - |
| otherInvestingActivities | - | 564.09K | 639.83K | 298.21K | 379.35K | 628.36K | 242.85K | 306.26K | 214.7K | 35315 |
| netCashProvidedByInvestingActivities | -30.64M | -18.39M | -6.74M | -10.96M | -23.21M | -15.76M | -12.73M | -19.46M | -11.29M | -5.9M |
| netDebtIssuance | -157.42K | -885.34K | -1.17M | 4.92M | -355.84K | -4.98M | -285.14K | 1.06M | 3.63M | -7.35M |
| longTermNetDebtIssuance | - | -885.34K | -1.08M | - | -2M | -397.49K | -285.14K | - | - | -755.86K |
| shortTermNetDebtIssuance | -157.42K | - | -96397 | 4.92M | 1.64M | -6.98M | - | 1.06M | 3.63M | -9.35M |
| netStockIssuance | - | - | - | - | 16.89M | - | - | 23.81M | - | - |
| netCommonStockIssuance | - | - | - | - | 16.89M | - | - | 23.81M | - | - |
| commonStockIssuance | - | - | - | - | 16.89M | - | - | 23.81M | - | - |
| commonStockRepurchased | - | - | - | - | - | - | - | - | - | - |
| netPreferredStockIssuance | - | - | - | - | - | - | - | - | - | - |
| netDividendsPaid | - | - | - | - | - | - | - | - | - | - |
| commonDividendsPaid | - | - | - | - | - | - | - | - | - | - |
| preferredDividendsPaid | - | - | - | - | - | - | - | - | - | - |
| otherFinancingActivities | -356.76K | -885K | -96397 | -1.03M | -2.3M | -397.49K | -340.2K | -1.41M | -644.34K | -755.86K |
| netCashProvidedByFinancingActivities | -514.19K | -885.34K | -1.27M | 3.89M | 14.24M | -5.38M | -625.33K | 23.45M | 2.98M | -8.1M |
| 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 | 50.57M | 51.99M | 42M | 34.93M | 27.59M | 24.25M | 27.63M | 22.42M | 20.25M | 15.81M |
| costOfRevenue | 20.47M | 22.27M | 20.42M | 19.24M | 14.97M | 11.85M | 15.22M | 12.12M | 14.6M | 11.84M |
| grossProfit | 30.1M | 29.72M | 21.58M | 15.7M | 12.62M | 12.4M | 12.41M | 10.29M | 5.64M | 3.97M |
| researchAndDevelopmentExpenses | - | - | - | - | - | - | - | - | - | - |
| generalAndAdministrativeExpenses | 2.94M | 2.79M | 2.7M | 3.57M | 1.98M | 1.96M | 1.68M | 1.86M | 1.94M | 1.66M |
| sellingAndMarketingExpenses | - | - | - | - | - | - | - | - | - | - |
| sellingGeneralAndAdministrativeExpenses | 2.94M | 2.92M | 2.7M | 3.57M | 1.98M | 1.96M | 1.68M | 1.86M | 1.94M | 1.66M |
| otherExpenses | 85000 | 88740 | 89232 | 87713 | 28206 | 279.9K | 40000 | 1.36M | 42250 | 148.04K |
| operatingExpenses | 3.02M | 2.92M | 2.78M | 3.65M | 2.01M | 2.24M | 1.72M | 3.22M | 1.97M | 1.54M |
| costAndExpenses | 23.49M | 25.19M | 23.2M | 22.89M | 16.98M | 14.08M | 16.94M | 15.34M | 16.57M | 13.38M |
| netInterestIncome | 267K | 177.35K | 198.69K | 85729 | 95104 | -76124 | -18467 | -40788 | -39882 | -106.92K |
| interestIncome | 325K | 299.86K | 373.08K | 203.22K | 206.08K | 160.24K | 109.26K | 94910 | 134.72K | 131.73K |
| interestExpense | 58000 | 122.51K | 174.39K | 117.5K | 110.97K | 248.49K | 115.61K | 135.7K | 174.6K | 238.66K |
| depreciationAndAmortization | 2.14M | 3.32M | 3.88M | 1.84M | 1.83M | 976K | 1.06M | 1.19M | 1.05M | 1.26M |
| ebitda | 29.64M | 30.13M | 30.69M | 14.13M | 12.73M | 12.86M | 11.97M | 7.59M | 4.84M | 3.86M |
| ebit | 27.5M | 26.81M | 26.81M | 12.28M | 10.89M | 11.89M | 10.92M | 6.39M | 3.79M | 2.6M |
| nonOperatingIncomeExcludingInterest | -419K | -197.73K | -513.85K | -240.8K | -276.5K | -1.72M | -226.57K | 684.78K | -134.32K | -435.57K |
| operatingIncome | 27.08M | 26.81M | 18.8M | 12.04M | 10.61M | 10.16M | 10.69M | 7.08M | 3.66M | 2.17M |
| totalOtherIncomeExpensesNet | 361K | 77796 | 388.26K | 123.31K | 165.53K | 1.44M | 110.96K | -820.47K | -40280 | 196.92K |
| incomeBeforeTax | 27.44M | 26.88M | 19.18M | 12.17M | 10.78M | 11.6M | 10.8M | 6.26M | 3.62M | 2.36M |
| incomeTaxExpense | 6.44M | 7.64M | 3.2M | 2.01M | 2.01M | 1.62M | 2.18M | 671.74K | -19593 | 407.79K |
| netIncomeFromContinuingOperations | 20.99M | 19.24M | 15.99M | 10.16M | 8.77M | 9.98M | 8.62M | 5.58M | 3.64M | 1.95M |
| netIncomeFromDiscontinuedOperations | - | - | - | - | - | - | - | - | - | - |
| otherAdjustmentsToNetIncome | - | - | - | - | - | - | - | - | - | - |
| netIncome | 20.99M | 19.24M | 15.99M | 10.16M | 8.77M | 9.98M | 8.62M | 5.58M | 3.64M | 1.95M |
| netIncomeDeductions | - | - | - | - | - | - | - | - | - | - |
| bottomLineNetIncome | 20.99M | 19.24M | 15.99M | 10.16M | 8.77M | 9.98M | 8.62M | 5.58M | 3.64M | 1.95M |
| eps | 0.28 | 0.25 | 0.21 | 0.13 | 0.12 | 0.13 | 0.11 | 0.07 | 0.05 | 0.03 |
| 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 | 64.44M | 49.3M | 38.77M | 30.43M | 26.5M | 22.18M | 20.03M | 12.04M | 11.06M | 11.55M |
| shortTermInvestments | - | - | - | - | - | - | - | - | - | - |
| cashAndShortTermInvestments | 64.44M | 49.3M | 38.77M | 30.43M | 26.5M | 22.18M | 20.03M | 12.04M | 11.06M | 11.55M |
| netReceivables | 9.34M | 11.31M | 8.94M | 7.17M | 6.4M | 2.53M | 3.73M | 3.4M | 4.02M | 2.86M |
| accountsReceivables | 5.13M | 10.63M | 4.83M | 3.21M | 2.84M | 2.18M | 2.1M | 3.4M | 4.02M | 2.48M |
| otherReceivables | 4.22M | 679.08K | 4.11M | 3.96M | 3.55M | 351.28K | 1.63M | - | - | 379.69K |
| inventory | 22.07M | 16.21M | 16.74M | 16.06M | 15.65M | 13.12M | 12.34M | 13.04M | 14M | 12.8M |
| prepaids | 4.22M | 3.27M | 5.71M | 5.4M | 5.12M | 1.1M | 2.2M | 2.76M | 4.31M | 1.46M |
| otherCurrentAssets | -4.22M | - | - | - | - | 1.12M | - | - | 3.18M | 1.36M |
| totalCurrentAssets | 95.85M | 80.08M | 64.45M | 53.65M | 48.55M | 40.05M | 36.1M | 31.24M | 32.26M | 29.64M |
| propertyPlantEquipmentNet | 119.73M | 79.99M | 106.42M | 97.23M | 87.32M | 76.72M | 81.45M | 57.33M | 77.74M | 79.16M |
| goodwill | - | - | - | - | - | - | - | - | - | - |
| intangibleAssets | - | - | - | - | - | 18.84M | - | 18.95M | 20.08M | 20.5M |
| goodwillAndIntangibleAssets | - | - | - | - | - | 18.84M | - | 18.95M | 20.08M | 20.5M |
| longTermInvestments | - | - | - | - | - | - | - | - | -20.08M | -20.5M |
| taxAssets | 1.36M | 1.25M | 3.67M | 3.28M | 2.53M | 1.88M | 7.11M | 1.69M | 1.74M | 1.79M |
| otherNonCurrentAssets | 10.87M | 38.36M | 8.11M | 6.74M | 5.4M | -12.59M | 1.9M | 5.84M | 3.73M | 4.65M |
| totalNonCurrentAssets | 131.97M | 119.6M | 118.19M | 107.25M | 95.25M | 84.85M | 90.46M | 83.81M | 83.21M | 85.6M |
| otherAssets | - | - | - | - | - | - | - | - | - | - |
| totalAssets | 227.82M | 199.68M | 182.64M | 160.9M | 143.8M | 124.9M | 126.57M | 115.05M | 115.48M | 115.25M |
| totalPayables | 20.71M | 16.52M | 22.12M | 14.53M | 12.77M | 8.78M | 10.67M | 8.56M | 7.81M | 3.59M |
| accountPayables | 20.71M | 16.52M | 22.12M | 14.53M | 12.77M | 3.95M | 10.67M | 8.56M | 7.81M | 3.59M |
| otherPayables | - | - | - | - | - | 4.83M | - | - | - | - |
| accruedExpenses | - | - | - | 569.26K | - | - | - | 412.29K | 401.94K | 1.43M |
| shortTermDebt | 1.01M | 6.01M | 5.21M | 5.13M | - | 5.59M | - | 5.37M | 5.11M | 5.71M |
| capitalLeaseObligationsCurrent | 1.01M | - | 496.95K | 201.04K | - | 251.72K | - | 571.4K | - | 694.4K |
| taxPayables | - | - | - | - | - | 3.72M | - | - | - | 3M |
| deferredRevenue | - | - | - | - | - | - | - | - | - | - |
| otherCurrentLiabilities | -15921 | 941.5K | -5.31M | 5.9M | 5.8M | 1.34M | 6.32M | 6.36M | 579.43K | 4.26M |
| totalCurrentLiabilities | 22.71M | 23.47M | 22.51M | 20.43M | 18.57M | 15.96M | 16.99M | 14.92M | 13.9M | 15.68M |
| longTermDebt | - | - | - | - | - | - | - | - | - | - |
| capitalLeaseObligationsNonCurrent | 1.71M | 1.14M | 741.79K | 200.23K | 360.71K | 109.95K | 182.54K | 160.7K | 75973 | 150.22K |
| deferredRevenueNonCurrent | - | - | - | - | - | - | - | - | - | - |
| deferredTaxLiabilitiesNonCurrent | - | - | - | - | - | - | - | - | - | - |
| otherNonCurrentLiabilities | 5.19M | 5.08M | 5.08M | 5.13M | 5.22M | 4.65M | 6.14M | 6.02M | 7.87M | 6.62M |
| totalNonCurrentLiabilities | 6.9M | 6.22M | 5.82M | 5.33M | 5.22M | 4.76M | 6.14M | 6.18M | 7.87M | 6.78M |
| otherLiabilities | - | - | - | - | - | - | - | - | - | - |
| capitalLeaseObligations | 2.72M | 1.14M | 1.24M | 401.28K | 360.71K | 361.67K | 182.54K | 732.1K | 75973 | 844.62K |
| totalLiabilities | 29.61M | 29.69M | 28.33M | 25.76M | 23.79M | 20.72M | 23.13M | 21.1M | 21.77M | 22.45M |
| treasuryStock | - | - | - | - | - | - | - | - | - | - |
| preferredStock | - | - | - | - | - | - | - | - | - | - |
| commonStock | 11.21M | 11.23M | 11.21M | 11.21M | 11.21M | 11.21M | 11.21M | 11.21M | 11.21M | 11.21M |
| retainedEarnings | 185.91M | 165.85M | 147.14M | 132.73M | 123.71M | 115.56M | 107.25M | 115.89M | 92.95M | 91.07M |
| additionalPaidInCapital | 36.16M | 36.22M | 36.16M | 36.16M | 36.16M | 36.16M | 36.16M | 36.16M | 36.16M | 36.16M |
| 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 | 20.99M | 19.24M | 15.99M | 10.16M | 8.77M | 9.98M | 8.62M | 5.58M | 3.64M | 1.95M |
| depreciationAndAmortization | 2.14M | 3.32M | 2.8M | 1.84M | 1.83M | 976K | 1.06M | 1.19M | 1.05M | 1.26M |
| deferredIncomeTax | - | 847.44K | - | - | - | - | - | - | - | - |
| stockBasedCompensation | 85000 | 88740 | 89232 | 136.31K | 67714 | 65009 | 65010 | 65009 | 53883 | 59327 |
| changeInWorkingCapital | 739K | -6.53M | -4.48M | 1.06M | -126.99K | -2.13M | 2.44M | -569.21K | -2.53M | -3.89M |
| accountsReceivables | 5.2M | -7.15M | -5.72M | -218.2K | -1.07M | -1.51M | 1.24M | -1.48M | -757.94K | -1.15M |
| inventory | -5.44M | 92386 | -150.24K | 222.59K | -1.91M | -1.68M | 217.47K | -12077 | -1.26M | -2.13M |
| accountsPayables | - | 525.23K | 1.39M | - | - | - | - | - | - | - |
| otherWorkingCapital | 970K | 528.81K | 1.03M | 1.06M | 2.85M | 1.06M | 979.21K | 925.66K | -686.48K | -610.46K |
| otherNonCashItems | 3.27M | 1.26M | 9.05M | -1.56M | -325.42K | -1.14M | 1.4M | 1.38M | -892.39K | -363.36K |
| netCashProvidedByOperatingActivities | 27.23M | 18.15M | 23.44M | 11.64M | 10.22M | 7.76M | 13.57M | 7.65M | 1.9M | -1.2M |
| investmentsInPropertyPlantAndEquipment | -7.01M | -7.29M | -8.74M | -8.12M | -4.75M | -5.11M | -5.51M | -6.16M | -2.18M | -2.62M |
| acquisitionsNet | - | 12389 | - | - | - | - | - | - | - | - |
| purchasesOfInvestments | - | - | - | - | - | - | - | - | - | - |
| salesMaturitiesOfInvestments | - | - | - | - | - | - | - | - | - | - |
| otherInvestingActivities | -551K | 309.23K | -3.06M | 250.48K | -1.28M | 151.24K | 130.74K | 135.48K | 11908 | 11804 |
| netCashProvidedByInvestingActivities | -7.56M | -7.28M | -11.8M | -7.87M | -6.03M | -4.96M | -5.38M | -6.02M | -2.03M | -2.47M |
| netDebtIssuance | -5M | 44.73 | 2903 | 6570 | -153.58K | -176.53K | -210.37K | -243.2K | -255.24K | -85.47 |
| longTermNetDebtIssuance | - | - | - | - | - | -176.53K | -210.37K | - | - | - |
| shortTermNetDebtIssuance | -5M | 44.73 | 2903 | 6570 | -153.58K | - | - | - | - | - |
| netStockIssuance | - | - | - | - | - | - | - | - | - | - |
| netCommonStockIssuance | - | - | - | - | - | - | - | - | - | - |
| commonStockIssuance | - | - | - | - | - | - | - | - | - | - |
| commonStockRepurchased | - | - | - | - | - | - | - | - | - | - |
| netPreferredStockIssuance | - | - | - | - | - | - | - | - | - | - |
| netDividendsPaid | - | - | - | - | - | - | - | - | - | - |
| commonDividendsPaid | - | - | - | - | - | - | - | - | - | - |
| preferredDividendsPaid | - | - | - | - | - | - | - | - | - | - |
| otherFinancingActivities | -54000 | -54433 | -72949 | -105.38K | -141.65K | -176.53K | -210.37K | -243.2K | -255.24K | -265.04K |
| netCashProvidedByFinancingActivities | -5.05M | -54389 | -70046 | -98813 | -295.23K | -176.53K | -210.37K | -243.2K | -255.24K | -265.04K |