NYSE : ODC
-$4.77 (-4.68%)
| date | 2025-07-31 | 2024-07-31 | 2023-07-31 | 2022-07-31 | 2021-07-31 | 2020-07-31 | 2019-07-31 | 2018-07-31 | 2017-07-31 | 2016-07-31 |
|---|---|---|---|---|---|---|---|---|---|---|
| revenue | 485.57M | 437.59M | 413.02M | 348.59M | 304.98M | 283.23M | 277.02M | 266M | 262.31M | 262.31M |
| costOfRevenue | 342.49M | 312.49M | 309.79M | 286.07M | 239.74M | 207.4M | 211.36M | 194.08M | 188.6M | 185.16M |
| grossProfit | 143.08M | 125.09M | 103.23M | 62.52M | 65.24M | 75.82M | 65.66M | 71.92M | 73.71M | 77.15M |
| researchAndDevelopmentExpenses | 2.4M | 2.1M | 1.2M | 2.11M | 2.54M | 2.76M | 3.2M | 3.43M | 3.22M | 3.02M |
| generalAndAdministrativeExpenses | 64.86M | - | - | - | - | - | - | - | - | - |
| sellingAndMarketingExpenses | 7.6M | - | - | - | - | - | - | - | - | - |
| sellingGeneralAndAdministrativeExpenses | 72.46M | 70.18M | 60.99M | 49.94M | 49.67M | 62.53M | 52.05M | 52.62M | 55.27M | 58.71M |
| otherExpenses | - | - | - | - | - | - | - | - | - | - |
| operatingExpenses | 74.86M | 72.28M | 62.19M | 52.05M | 52.2M | 65.29M | 55.25M | 56.04M | 58.48M | 61.74M |
| costAndExpenses | 417.35M | 384.77M | 371.98M | 338.12M | 291.94M | 272.7M | 266.61M | 250.12M | 247.08M | 246.9M |
| netInterestIncome | -1.74M | -931K | -999K | -1.18M | -651K | -259K | -344K | -417K | -793K | -1.01M |
| interestIncome | 698K | 873K | 465K | 45000 | 71000 | 259K | 250K | 259K | 95000 | 29000 |
| interestExpense | 2.43M | 1.8M | 1.46M | 1.23M | 722K | 518K | 594K | 676K | 888K | 1.04M |
| depreciationAndAmortization | 22.04M | 19.28M | 15.53M | 13.47M | 14.18M | 13.92M | 13.33M | 12.76M | 12.77M | 12.19M |
| ebitda | 90.69M | 70.74M | 51.67M | 20.41M | 28.27M | 37.46M | 28.47M | 28.3M | 28.2M | 27.58M |
| ebit | 68.64M | 51.46M | 36.14M | 6.94M | 14.09M | 23.54M | 15.14M | 15.54M | 15.43M | 15.39M |
| nonOperatingIncomeExcludingInterest | -425K | 1.36M | 4.9M | 3.53M | -1.05M | -13.01M | -4.73M | 335K | -203K | 20999 |
| operatingIncome | 68.22M | 52.82M | 41.04M | 10.46M | 13.04M | 10.53M | 10.41M | 15.88M | 15.23M | 15.41M |
| totalOtherIncomeExpensesNet | -2.01M | -3.17M | -6.36M | -4.76M | 332K | 12.49M | 4.14M | -1.01M | -685K | -1.06M |
| incomeBeforeTax | 66.21M | 49.65M | 34.68M | 5.71M | 13.37M | 23.02M | 14.55M | 14.87M | 14.54M | 14.36M |
| incomeTaxExpense | 12.22M | 10.22M | 5.2M | 97000 | 2.39M | 4.28M | 1.93M | 6.64M | 3.75M | 744K |
| netIncomeFromContinuingOperations | 54M | 39.43M | 29.48M | 5.61M | 10.98M | 18.74M | 12.62M | 8.22M | 10.79M | 13.61M |
| netIncomeFromDiscontinuedOperations | - | - | - | - | - | - | - | - | - | - |
| otherAdjustmentsToNetIncome | -2.58M | -2.16M | -1.52M | - | -493K | -951K | -490K | -193K | -253K | -315K |
| netIncome | 51.42M | 37.26M | 28.03M | 5.67M | 10.62M | 17.95M | 12.12M | 8.05M | 10.54M | 13.3M |
| netIncomeDeductions | -11.98M | -8.69M | -6.55M | - | - | - | - | - | - | - |
| bottomLineNetIncome | 63.39M | 45.95M | 34.59M | 5.67M | 10.62M | 17.95M | 12.12M | 8.05M | 10.54M | 13.3M |
| eps | 3.99 | 2.93 | 2.23 | 0.44 | 0.81 | 1.35 | 0.91 | 0.61 | 0.8 | 1.02 |
| date | 2025-07-31 | 2024-07-31 | 2023-07-31 | 2022-07-31 | 2021-07-31 | 2020-07-31 | 2019-07-31 | 2018-07-31 | 2017-07-31 | 2016-07-31 |
|---|---|---|---|---|---|---|---|---|---|---|
| cashAndCashEquivalents | 50.46M | 24.48M | 31.75M | 16.3M | 24.59M | 40.89M | 21.86M | 12.76M | 9.1M | 18.63M |
| shortTermInvestments | - | - | - | - | - | - | - | 7.12M | 23.58M | 10.18M |
| cashAndShortTermInvestments | 50.46M | 24.48M | 31.75M | 16.3M | 24.59M | 40.89M | 21.86M | 19.88M | 32.67M | 28.81M |
| netReceivables | 69.37M | 62.17M | 59.29M | 51.68M | 40.92M | 34.91M | 35.46M | 33.6M | 32.75M | 30.39M |
| accountsReceivables | 69.37M | 62.17M | 59.29M | 51.68M | 40.92M | 34.91M | 35.46M | 33.6M | 32.75M | 30.39M |
| otherReceivables | - | - | - | - | - | - | - | - | - | - |
| inventory | 51.59M | 54.24M | 42.61M | 35.56M | 23.6M | 23.89M | 24.16M | 22.52M | 22.62M | 23.25M |
| prepaids | - | - | - | 7.47M | 6.09M | 5.66M | 4.71M | 4.11M | 3.89M | 3.94M |
| otherCurrentAssets | 5.96M | 6.27M | 2.85M | 3.66M | 6.74M | 3.06M | 3.08M | 2.9M | 5.09M | 4.78M |
| totalCurrentAssets | 177.38M | 147.16M | 136.51M | 114.68M | 101.94M | 108.42M | 89.28M | 83.01M | 97.02M | 91.17M |
| propertyPlantEquipmentNet | 149.7M | 156.46M | 130.26M | 118.47M | 104.56M | 102.76M | 90.8M | 86.71M | 84.03M | 80.71M |
| goodwill | 16.02M | 15.44M | 3.62M | 3.62M | 9.26M | 9.26M | 9.26M | 9.26M | 9.03M | 9.03M |
| intangibleAssets | 24.97M | 26.7M | 1.42M | 1.62M | 2.21M | 2.46M | 3.09M | 3.46M | 4.41M | 5.36M |
| goodwillAndIntangibleAssets | 40.99M | 42.14M | 5.04M | 5.24M | 11.47M | 11.73M | 12.35M | 12.73M | 13.44M | 14.28M |
| longTermInvestments | - | - | - | - | - | - | - | - | - | - |
| taxAssets | 1.29M | 1.54M | 7.2M | 3.68M | 2.1M | 7.3M | 7.76M | 7.35M | 11.61M | 12.75M |
| otherNonCurrentAssets | 22.31M | 7.31M | 7.23M | 7.55M | 7.5M | 5.67M | 5.05M | 4.89M | 6.48M | 5.9M |
| totalNonCurrentAssets | 214.29M | 207.45M | 149.73M | 134.93M | 125.62M | 127.46M | 115.95M | 111.67M | 115.56M | 113.64M |
| otherAssets | - | - | - | - | - | - | - | - | - | - |
| totalAssets | 391.68M | 354.6M | 286.24M | 249.61M | 227.57M | 235.88M | 205.23M | 194.68M | 212.58M | 204.82M |
| totalPayables | 16.81M | 15.01M | 17.1M | 13.4M | 9.21M | 12.53M | 8.09M | 6.54M | 9.59M | 6.64M |
| accountPayables | 16.81M | 15.01M | 17.1M | 13.4M | 9.21M | 12.53M | 8.09M | 6.54M | 9.59M | 6.64M |
| otherPayables | - | - | - | - | - | - | - | - | - | - |
| accruedExpenses | 20.53M | 20.71M | 19.05M | 13.44M | 10.81M | 13.5M | 6.74M | 8.97M | 7.92M | 8.66M |
| shortTermDebt | 5.07M | 5.56M | 2.87M | 3.18M | 3.04M | 3.17M | 3.08M | 3.08M | 3.08M | 3.08M |
| capitalLeaseObligationsCurrent | - | - | - | - | - | - | - | - | - | - |
| taxPayables | - | 1.74M | 1.04M | 1.01M | 1M | 1.66M | - | - | - | - |
| deferredRevenue | - | - | - | - | - | - | - | - | - | - |
| otherCurrentLiabilities | 26.78M | 25.4M | 19.74M | 18.5M | 15.94M | 17M | 14.69M | 12.35M | 12.36M | 12.37M |
| totalCurrentLiabilities | 69.19M | 66.68M | 58.77M | 48.52M | 38.99M | 46.21M | 32.61M | 30.95M | 32.95M | 30.74M |
| longTermDebt | 38.82M | 49.77M | 30.83M | 31.8M | 7.88M | 8.85M | 3.05M | 6.11M | 9.16M | 12.22M |
| capitalLeaseObligationsNonCurrent | 11.3M | 15.39M | 8.81M | 9.75M | 8.02M | 9.14M | - | - | - | - |
| deferredRevenueNonCurrent | - | - | - | - | - | - | - | - | - | - |
| deferredTaxLiabilitiesNonCurrent | - | - | - | - | - | - | - | - | - | - |
| otherNonCurrentLiabilities | 13.32M | 12.17M | 10.75M | 9.2M | 13.44M | 23.73M | 34.02M | 25.74M | 44.42M | 46.31M |
| totalNonCurrentLiabilities | 63.43M | 77.34M | 50.39M | 50.75M | 29.34M | 41.71M | 37.07M | 31.85M | 53.58M | 58.52M |
| otherLiabilities | - | - | - | - | - | - | - | - | - | - |
| capitalLeaseObligations | 11.3M | 15.39M | 8.81M | 9.75M | 8.02M | 9.14M | - | - | - | - |
| totalLiabilities | 132.62M | 144.02M | 109.16M | 99.26M | 68.33M | 87.92M | 69.68M | 62.8M | 86.54M | 89.38M |
| treasuryStock | -87.54M | -84.44M | -81.21M | -79.43M | -66.15M | -62.27M | -56.54M | -55.95M | -55.7M | -55.72M |
| preferredStock | - | - | - | - | - | - | - | - | - | - |
| commonStock | 1.99M | 1.14M | 1.12M | 1.11M | 1.1M | 1.09M | 1.09M | 1.06M | 1.05M | 1.05M |
| retainedEarnings | 277.5M | 232.25M | 200.8M | 178.75M | 180.44M | 176.58M | 164.76M | 158.94M | 154.74M | 149.94M |
| additionalPaidInCapital | 66.14M | 60.88M | 55.62M | 52.47M | 48.27M | 44.99M | 41.3M | 38.47M | 36.24M | 34.29M |
| date | 2025-07-31 | 2024-07-31 | 2023-07-31 | 2022-07-31 | 2021-07-31 | 2020-07-31 | 2019-07-31 | 2018-07-31 | 2017-07-31 | 2016-07-31 |
|---|---|---|---|---|---|---|---|---|---|---|
| netIncome | 54M | 39.43M | 29.48M | 5.61M | 10.98M | 18.74M | 12.62M | 8.22M | 10.79M | 13.61M |
| depreciationAndAmortization | 22.04M | 19.28M | 15.53M | 13.47M | 14.18M | 13.92M | 13.33M | 12.76M | 12.77M | 12.19M |
| deferredIncomeTax | 240K | 1.7M | -4.43M | -2.3M | 5.2M | 453K | -406K | 7.27M | 2.41M | -8.11M |
| stockBasedCompensation | 5.37M | 4.82M | 3.15M | 2.74M | 2.53M | 3.37M | 2.41M | 1.6M | 1.51M | 1.25M |
| changeInWorkingCapital | -432K | -5.28M | -165K | -14.89M | -11.52M | 9.8M | 798K | -10.37M | 3.38M | 6.06M |
| accountsReceivables | -7.79M | 1.45M | -7.9M | -10.65M | -5.96M | -12000 | -1.73M | -522K | -2.33M | 942K |
| inventory | 2.34M | -4.68M | -2.2M | -12.11M | 518K | 213K | -1.69M | 225K | 666K | -1.95M |
| accountsPayables | 926K | -2.79M | 3.24M | 5M | -2.41M | 4.24M | 590K | -2.44M | 2.42M | -931K |
| otherWorkingCapital | 4.1M | 741K | 6.7M | 2.87M | -3.67M | 5.36M | 3.63M | -7.63M | 2.63M | 8M |
| otherNonCashItems | -1.03M | 372K | 6.2M | 5.2M | -7.73M | -3.82M | -2M | -8.87M | -3.92M | 177K |
| netCashProvidedByOperatingActivities | 80.18M | 60.31M | 49.76M | 9.84M | 13.64M | 42.46M | 26.74M | 10.61M | 26.95M | 25.17M |
| investmentsInPropertyPlantAndEquipment | -32.56M | -32M | -24.37M | -22.83M | -18.84M | -14.74M | -15.03M | -15.07M | -14.76M | -10.68M |
| acquisitionsNet | -115K | -44.3M | -269K | 21000 | 9000 | 205K | 15.03M | -730K | 14.76M | 10.68M |
| purchasesOfInvestments | - | - | - | - | - | - | -4.68M | -35.91M | -47.53M | -45.2M |
| salesMaturitiesOfInvestments | - | - | - | - | - | - | 11.81M | 52.49M | 34.19M | 37.21M |
| otherInvestingActivities | 151K | 182K | 70000 | - | - | -142K | -15.02M | 1.8M | -14.7M | -10.42M |
| netCashProvidedByInvestingActivities | -32.53M | -76.12M | -24.57M | -22.81M | -18.83M | -14.68M | -7.89M | 2.57M | -28.04M | -18.41M |
| netDebtIssuance | -11M | 19M | -1M | 24M | -1M | 3.68M | -3.08M | -3.08M | -3.08M | -3.48M |
| longTermNetDebtIssuance | -11M | 19M | -1M | 24M | -1M | 3.68M | -3.08M | -3.08M | -3.08M | -3.48M |
| shortTermNetDebtIssuance | - | - | - | - | - | - | - | - | - | - |
| netStockIssuance | -2.35M | -2.78M | -1.08M | -11.81M | -3.13M | -5.54M | -147K | -26000 | 35000 | 448K |
| netCommonStockIssuance | -2.35M | -2.78M | -1.08M | -11.81M | -3.13M | -5.54M | -147K | -26000 | 35000 | 448K |
| commonStockIssuance | - | - | - | - | - | - | - | - | 170K | 466K |
| commonStockRepurchased | -2.35M | -2.78M | -1.08M | -11.81M | -3.13M | -5.54M | -147K | -26000 | -135K | -18000 |
| netPreferredStockIssuance | - | - | - | - | - | - | - | - | - | - |
| netDividendsPaid | -8.4M | -7.81M | -7.43M | -7.38M | -7.19M | -7.03M | -6.66M | -6.23M | -5.93M | -5.6M |
| commonDividendsPaid | -8.4M | -7.81M | -7.43M | -7.38M | -7.19M | -7.03M | -6.66M | -6.23M | -5.93M | -5.6M |
| preferredDividendsPaid | - | - | - | - | - | - | - | - | - | - |
| otherFinancingActivities | - | -90000 | -7000 | -114K | - | 142K | - | - | 424K | 194K |
| netCashProvidedByFinancingActivities | -21.74M | 8.33M | -9.52M | 4.7M | -11.32M | -8.75M | -9.89M | -9.34M | -8.55M | -8.44M |
| date | 2026-04-30 | 2026-01-31 | 2025-10-31 | 2025-07-31 | 2025-04-30 | 2025-01-31 | 2024-10-31 | 2024-07-31 | 2024-04-30 | 2024-01-31 |
|---|---|---|---|---|---|---|---|---|---|---|
| revenue | 126.33M | 117.74M | 120.49M | 125.21M | 115.5M | 116.91M | 127.94M | 113.7M | 106.78M | 105.67M |
| costOfRevenue | 98.31M | 85.44M | 84.99M | 90.38M | 82.48M | 82.47M | 87.16M | 80.68M | 76.64M | 74.73M |
| grossProfit | 28.02M | 32.3M | 35.5M | 34.83M | 33.02M | 34.45M | 40.78M | 33.02M | 30.14M | 30.94M |
| researchAndDevelopmentExpenses | - | - | - | - | - | - | - | - | - | - |
| generalAndAdministrativeExpenses | - | - | - | - | - | - | - | - | - | - |
| sellingAndMarketingExpenses | - | - | - | - | - | - | - | - | - | - |
| sellingGeneralAndAdministrativeExpenses | 18.98M | 16.61M | 18.54M | 19.19M | 19.12M | 16.97M | 19.59M | 18.96M | 19.7M | 15.78M |
| otherExpenses | -8.06M | - | - | - | - | - | - | - | - | - |
| operatingExpenses | 10.93M | 16.61M | 18.54M | 19.19M | 19.12M | 16.97M | 19.59M | 18.96M | 19.7M | 15.78M |
| costAndExpenses | 109.24M | 102.04M | 103.53M | 109.57M | 101.6M | 99.43M | 106.76M | 99.64M | 96.35M | 90.5M |
| netInterestIncome | -161K | -248K | -162K | -206K | -426K | -520K | -584K | -586K | -94000 | -65000 |
| interestIncome | 387K | 307K | 394K | 340K | 122K | 86000 | 150K | 116K | 285K | 297K |
| interestExpense | 548K | 555K | 556K | 546K | 548K | 606K | 734K | 702K | 379K | 362K |
| depreciationAndAmortization | 5.71M | 5.67M | 5.8M | 5.65M | 5.57M | 5.44M | 5.38M | 5.66M | 4.76M | 4.49M |
| ebitda | 24.16M | 22.04M | 24.04M | 21.7M | 20.37M | 22.3M | 26.32M | 18.36M | 15.28M | 19.53M |
| ebit | 18.45M | 16.37M | 18.23M | 16.05M | 14.8M | 16.87M | 20.94M | 12.7M | 10.52M | 15.04M |
| nonOperatingIncomeExcludingInterest | -1.36M | -676K | -1.28M | -403K | -892K | 616K | 254K | 1.36M | -85000 | 121K |
| operatingIncome | 17.09M | 15.69M | 16.95M | 15.64M | 13.9M | 17.48M | 21.19M | 14.06M | 10.43M | 15.16M |
| totalOtherIncomeExpensesNet | 818K | 121K | 720K | -143K | 344K | -1.22M | -988K | -2.06M | -294K | -483K |
| incomeBeforeTax | 17.91M | 15.81M | 17.67M | 15.5M | 14.25M | 16.26M | 20.2M | 12M | 10.14M | 14.68M |
| incomeTaxExpense | 3.38M | 3.24M | 2.22M | 2.45M | 2.6M | 3.34M | 3.83M | 3.48M | 2.36M | 2.3M |
| netIncomeFromContinuingOperations | 14.53M | 12.57M | 15.46M | 13.06M | 11.64M | 12.92M | 16.38M | 8.52M | 7.78M | 12.38M |
| netIncomeFromDiscontinuedOperations | - | - | - | - | - | - | - | - | - | - |
| otherAdjustmentsToNetIncome | - | - | - | -640K | -540K | -598K | -817K | -433K | -404K | -698K |
| netIncome | 14.53M | 12.57M | 15.46M | 12.42M | 11.1M | 12.32M | 15.56M | 8.09M | 7.37M | 11.68M |
| netIncomeDeductions | - | -2.38M | -2.71M | -2.89M | -2.59M | -2.87M | -3.62M | -1.88M | - | - |
| bottomLineNetIncome | 13.9M | 14.94M | 18.17M | 15.3M | 13.69M | 15.2M | 19.18M | 9.97M | 7.37M | 11.68M |
| eps | 1.13 | 0.94 | 1.14 | 0.96 | 0.86 | 0.96 | 1.21 | 0.63 | 0.58 | 0.92 |
| date | 2026-04-30 | 2026-01-31 | 2025-10-31 | 2025-07-31 | 2025-04-30 | 2025-01-31 | 2024-10-31 | 2024-07-31 | 2024-04-30 | 2024-01-31 |
|---|---|---|---|---|---|---|---|---|---|---|
| cashAndCashEquivalents | 62.94M | 46.93M | 42.38M | 50.46M | 36.48M | 22.59M | 13.51M | 24.48M | 46.82M | 27.8M |
| shortTermInvestments | - | - | - | - | - | - | - | - | - | - |
| cashAndShortTermInvestments | 62.94M | 46.93M | 42.38M | 50.46M | 36.48M | 22.59M | 13.51M | 24.48M | 46.82M | 27.8M |
| netReceivables | 75.77M | 70.18M | 66.47M | 69.37M | 65.52M | 66.09M | 70.54M | 62.17M | 60M | 59.34M |
| accountsReceivables | 75.77M | 70.18M | 66.47M | 69.37M | 65.52M | 66.09M | 70.54M | 62.17M | 60M | 59.34M |
| otherReceivables | - | - | - | - | - | - | - | - | - | - |
| inventory | 52.42M | 53.75M | 56.64M | 51.59M | 56.53M | 55.23M | 56.02M | 54.24M | 45.47M | 46.23M |
| prepaids | - | - | - | 5.96M | - | - | - | - | 6.55M | 6.07M |
| otherCurrentAssets | 5.21M | 5.9M | 4.58M | - | 4.9M | 5.11M | 4.04M | 6.27M | - | - |
| totalCurrentAssets | 196.34M | 176.76M | 170.08M | 177.38M | 163.43M | 149.02M | 144.12M | 147.16M | 158.85M | 139.43M |
| propertyPlantEquipmentNet | 164.24M | 163.2M | 161.97M | 149.7M | 155.07M | 153.83M | 155.5M | 156.46M | 140.93M | 137.68M |
| goodwill | 16.02M | 16.02M | 16.02M | 16.02M | 15.74M | 15.71M | 15.67M | 15.44M | 3.62M | 3.62M |
| intangibleAssets | 24.64M | 24.94M | 25.22M | 24.97M | 25.81M | 26.1M | 26.39M | 26.7M | 1.46M | 1.45M |
| goodwillAndIntangibleAssets | 40.65M | 40.95M | 41.24M | 40.99M | 41.55M | 41.81M | 42.06M | 42.14M | 5.08M | 5.07M |
| longTermInvestments | - | - | - | - | - | - | - | - | - | - |
| taxAssets | 1.18M | 879K | 854K | 1.29M | 1.91M | 1.68M | 1.08M | 1.54M | 7.12M | 6.82M |
| otherNonCurrentAssets | 6.37M | 6.34M | 6.59M | 22.31M | 7.58M | 7.41M | 7.42M | 7.31M | 7.19M | 7.15M |
| totalNonCurrentAssets | 212.44M | 211.36M | 210.65M | 214.29M | 206.12M | 204.73M | 206.06M | 207.45M | 160.31M | 156.72M |
| otherAssets | - | - | - | - | - | - | - | - | - | - |
| totalAssets | 408.79M | 388.13M | 380.72M | 391.68M | 369.54M | 353.75M | 350.17M | 354.6M | 319.15M | 296.15M |
| totalPayables | 31.25M | 26.97M | 28.91M | 16.81M | 13.18M | 14M | 13.82M | 15.01M | 13.73M | 12.01M |
| accountPayables | 13.85M | 10.22M | 13.94M | 16.81M | 13.18M | 14M | 13.82M | 15.01M | 13.73M | 12.01M |
| otherPayables | 17.4M | 16.75M | 14.97M | - | - | - | - | - | - | - |
| accruedExpenses | 23.59M | 18.66M | 16.4M | 20.53M | 16.97M | 11.96M | 8.97M | 20.71M | 16.81M | 11.83M |
| shortTermDebt | 1M | 1M | 1M | 5.07M | 5.17M | 5.36M | 5.48M | 5.56M | 3.82M | 3.64M |
| capitalLeaseObligationsCurrent | 3.94M | 4.03M | 3.79M | - | - | - | - | - | - | - |
| taxPayables | - | - | - | - | 1.51M | 1.07M | 4.35M | 1.74M | 802K | 266K |
| deferredRevenue | - | - | - | - | 600K | 100000 | 200K | - | 100000 | 200K |
| otherCurrentLiabilities | 149K | 559K | 782K | 26.78M | 21.74M | 20.77M | 26.37M | 25.4M | 17.46M | 18.49M |
| totalCurrentLiabilities | 59.92M | 51.22M | 50.89M | 69.19M | 57.66M | 52.19M | 54.84M | 66.68M | 51.92M | 46.16M |
| longTermDebt | 38.85M | 38.84M | 38.83M | 38.82M | 39.81M | 39.8M | 44.78M | 49.77M | 40.86M | 30.85M |
| capitalLeaseObligationsNonCurrent | 10.55M | 11.52M | 10.6M | 11.3M | 12.24M | 13.26M | 14.29M | 15.39M | 11.4M | 11.25M |
| deferredRevenueNonCurrent | - | - | - | - | - | - | - | - | - | - |
| deferredTaxLiabilitiesNonCurrent | - | - | - | - | - | - | - | - | - | - |
| otherNonCurrentLiabilities | 14.25M | 14.11M | 13.88M | 13.32M | 12.98M | 12.64M | 12.27M | 12.17M | 12.03M | 11.85M |
| totalNonCurrentLiabilities | 63.64M | 64.46M | 63.31M | 63.43M | 65.03M | 65.7M | 71.34M | 77.34M | 64.28M | 53.95M |
| otherLiabilities | - | - | - | - | - | - | - | - | - | - |
| capitalLeaseObligations | 14.48M | 15.55M | 14.4M | 11.3M | 12.24M | 13.26M | 14.29M | 15.39M | 11.4M | 11.25M |
| totalLiabilities | 123.56M | 115.68M | 114.2M | 132.62M | 122.68M | 117.89M | 126.18M | 144.02M | 116.2M | 100.11M |
| treasuryStock | -100.21M | -99.95M | -94.52M | -87.54M | -87.31M | -87.23M | -87M | -84.44M | -84.15M | -84.03M |
| preferredStock | - | - | - | - | - | - | - | - | - | - |
| commonStock | 2M | 2M | 2M | 1.99M | 1.99M | 1.99M | 1.14M | 1.14M | 1.14M | 1.13M |
| retainedEarnings | 312.12M | 300.34M | 290.52M | 277.5M | 266.89M | 257.35M | 246.52M | 232.25M | 225.82M | 220M |
| additionalPaidInCapital | 70.34M | 68.98M | 67.6M | 66.14M | 64.54M | 63.2M | 62.6M | 60.88M | 59.45M | 58.2M |
| date | 2026-04-30 | 2026-01-31 | 2025-10-31 | 2025-07-31 | 2025-04-30 | 2025-01-31 | 2024-10-31 | 2024-07-31 | 2024-04-30 | 2024-01-31 |
|---|---|---|---|---|---|---|---|---|---|---|
| netIncome | 14.53M | 12.57M | 15.46M | 12.42M | 11.64M | 12.92M | 16.38M | 8.52M | 7.78M | 11.68M |
| depreciationAndAmortization | 5.71M | 5.67M | 5.8M | 5.65M | 5.57M | 5.44M | 5.38M | 5.66M | 4.76M | 4.49M |
| deferredIncomeTax | -271K | -438K | 438K | 356K | - | -352K | 462K | 1.61M | -297K | 207K |
| stockBasedCompensation | 1.27M | -1.45M | 1.45M | - | 1.34M | 1.39M | 1.15M | 1.23M | 1.24M | 1.25M |
| changeInWorkingCapital | 10.69M | -1.31M | -12.92M | 4.53M | 4.33M | 1.81M | -12.79M | 6.32M | 5.39M | -9.06M |
| accountsReceivables | -5.57M | -3.71M | 3.08M | -3.97M | 608K | 4.6M | -9.02M | 2.25M | -729K | 1.42M |
| inventory | 1.29M | 3.02M | -5.08M | 4.88M | -1.15M | 639K | -2.03M | -1.71M | 694K | -2.29M |
| accountsPayables | 2.3M | -3.24M | 296K | 431K | -1.49M | 100000 | 1.89M | -1.79M | 2.24M | -1.95M |
| otherWorkingCapital | 12.67M | 2.62M | -11.21M | 3.19M | 6.36M | -3.52M | -3.63M | 7.58M | 3.19M | -6.24M |
| otherNonCashItems | -9.99M | 3.04M | 119K | 2.24M | -224K | 203K | 341K | 33000 | 109K | 821K |
| netCashProvidedByOperatingActivities | 21.94M | 18.09M | 10.35M | 25.2M | 22.66M | 21.41M | 10.92M | 23.38M | 18.98M | 9.38M |
| investmentsInPropertyPlantAndEquipment | -6.1M | -5.75M | -9.07M | -8.08M | -6.68M | -4.99M | -12.82M | -8.28M | -8.17M | -7.48M |
| acquisitionsNet | - | - | - | 62000 | - | -115K | - | -44.3M | 181K | - |
| purchasesOfInvestments | - | - | - | - | - | - | - | - | - | - |
| salesMaturitiesOfInvestments | 312K | - | - | - | - | - | - | - | - | - |
| otherInvestingActivities | - | - | - | - | 89000 | - | - | - | - | - |
| netCashProvidedByInvestingActivities | -5.79M | -5.75M | -9.07M | -8.02M | -6.59M | -5.1M | -12.82M | -52.58M | -7.99M | -7.48M |
| netDebtIssuance | - | - | - | -1M | - | -5M | -5M | 9M | 10M | - |
| longTermNetDebtIssuance | - | - | - | -1M | - | -5M | -5M | 9M | 10M | - |
| shortTermNetDebtIssuance | - | - | - | - | - | - | - | - | - | - |
| netStockIssuance | -280K | -5.4M | -6.96M | -116K | -69000 | -180K | -1.98M | -88000 | -115K | -1.7M |
| netCommonStockIssuance | -280K | -5.4M | -6.96M | -116K | -69000 | -180K | -1.98M | -88000 | -115K | -1.7M |
| commonStockIssuance | - | - | - | - | - | - | - | - | - | - |
| commonStockRepurchased | -280K | -5.4M | -6.96M | -116K | -69000 | -180K | -1.98M | -88000 | -115K | -1.7M |
| netPreferredStockIssuance | - | - | - | - | - | - | - | - | - | - |
| netDividendsPaid | -2.75M | -2.43M | -2.44M | -2.1M | -2.1M | -2.1M | -2.1M | -1.96M | -1.96M | -1.96M |
| commonDividendsPaid | -2.75M | -2.43M | -2.44M | -2.1M | -2.1M | -2.1M | -2.1M | -1.96M | -1.96M | -1.96M |
| preferredDividendsPaid | - | - | - | - | - | - | - | - | - | - |
| otherFinancingActivities | - | - | - | - | - | - | - | -90000 | - | - |
| netCashProvidedByFinancingActivities | -3.03M | -7.84M | -9.4M | -3.22M | -2.16M | -7.28M | -9.08M | 6.86M | 7.93M | -3.66M |