XML 31 R20.htm IDEA: XBRL DOCUMENT
v3.25.2

Earnings Per Share | 9 Months Ended
--- | ---
Jul. 31, 2025
Earnings Per Share [Abstract] |
Earnings Per Share | Earnings Per Share Basic net income or loss per common share is calculated using the weighted-average number of common shares outstanding during the period without consideration of the dilutive effect of conversion of preferred stock. Diluted net income or loss per common share is calculated using the weighted-average number of common shares outstanding during the period plus the dilutive effect of unvested, restricted stock and conversion of preferred stock. The computations for basic and diluted net income or loss per common share are as follows (in thousands, except per share data):
| Three Months Ended July 31, |  | Nine Months Ended July 31, |  |
| 2025 |  | 2024 |  | 2025 |  | 2024 |  |
Basic net (loss) income per common share: |  |  |  |  |  |  |
Net (loss) income applicable to common stock | $ | (980) |  |  | $ | 6,468 |  |  | $ | (7,666) |  |  | $ | 9,199 |  |  |
Effect of unvested, restricted stock | (16) |  |  | (95) |  |  | (52) |  |  | (153) |  |  |
Numerator: Net (loss) income for basic EPS | (996) |  |  | 6,373 |  |  | (7,718) |  |  | 9,046 |  |  |
Denominator: Weighted average common shares–basic | 17,854 |  |  | 17,756 |  |  | 17,823 |  |  | 17,701 |  |  |
Basic net (loss) income per common share | $ | (0.06) |  |  | $ | 0.36 |  |  | $ | (0.43) |  |  | $ | 0.51 |  |  |
Diluted net (loss) income per common share: |  |  |  |  |  |  |  |  |
Net (loss) income for basic EPS | $ | (996) |  |  | $ | 6,373 |  |  | $ | (7,718) |  |  | $ | 9,046 |  |  |
Effect of dilutive preferred stock | — |  |  | 125 |  |  | — |  |  | — |  |  |
Numerator: Net (loss) income for diluted EPS | (996) |  |  | 6,498 |  |  | (7,718) |  |  | 9,046 |  |  |
Weighted average common shares–basic | 17,854 |  |  | 17,756 |  |  | 17,823 |  |  | 17,701 |  |  |
Effect of dilutive preferred stock | — |  |  | 607 |  |  | — |  |  | — |  |  |
Denominator: Weighted average common shares–diluted | 17,854 |  |  | 18,363 |  |  | 17,823 |  |  | 17,701 |  |  |
Diluted net (loss) income per common share | $ | (0.06) |  |  | $ | 0.35 |  |  | $ | (0.43) |  |  | $ | 0.51 |  |  |
Diluted net income or loss per common share is computed using the more dilutive method of either the two-class method or the treasury stock method. Unvested stock-based compensation awards that contain non-forfeitable rights to dividends as participating shares are included in computing earnings per share. The Company’s unvested, restricted stock awards qualify as participating shares. Diluted net (loss) income per common share was calculated under the two-class method for the three and nine months ended July 31, 2025 and 2024.

X
- References No definition available. + Details
Name: | us-gaap_EarningsPerShareAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The entire disclosure for earnings per share. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -Name Accounting Standards Codification -Publisher FASB -URI https://asc.fasb.org/260/tableOfContent Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 2 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482662/260-10-50-2 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 3 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482662/260-10-50-3 + Details
Name: | us-gaap_EarningsPerShareTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration