XML 44 R29.htm IDEA: XBRL DOCUMENT
v3.25.1

Summary of Business and Significant Accounting Policies (Tables) | 12 Months Ended
--- | ---
Jan. 31, 2025
Accounting Policies [Abstract] |
Schedule of inventory, net | The following table presents an updated breakdown of the Company’s net inventory (in thousands) as of January 31, 2025 and 2024:
| January 31,
| 2025 |  | 2024
Finished goods | $ | 19,599 |  |  | $ | 18,861 |
Work in Process | 21,357 |  |  | 25,047 |
Raw materials | 14,691 |  |  | 14,463 |
Inventories | $ | 55,647 |  |  | $ | 58,371 |
Schedule of Property Plant and Equipment | Property, plant, and equipment are stated at cost, less accumulated depreciation and amortization. Depreciation and amortization are computed on the straight-line method for financial reporting purposes based upon the following estimated useful lives:
Land improvements | 5 to 25 years
Buildings and building improvements | 5 to 40 years
Machinery and equipment | 3 to 10 years
Leasehold improvements | shorter of lease or useful life
Property, plant, and equipment consisted of the following (in thousands):
| January 31,
| 2025 |  | 2024
Land | $ | 3,731 |  |  | $ | 3,731 |
Land improvements | 706 |  |  | 694 |
Buildings and building improvements | 52,030 |  |  | 51,576 |
Machinery and equipment | 119,972 |  |  | 114,400 |
Leasehold improvements | 657 |  |  | 523 |
Property, plant and equipment, gross | 177,096 |  |  | 170,924 |
Less accumulated depreciation and amortization | (140,668) |  |  | (136,356) |
Property, plant and equipment, net | $ | 36,428 |  |  | $ | 34,568 |
Asset retirement obligations related to leased manufacturing facilities |
| January 31,
| 2025 |  | 2024
| (In thousands)
Balance at beginning of period | $ | 212 |  |  | $ | 205 |
Increase in obligation | 200 |  |  | — |
Accretion expense | 33 |  |  | 7 |
Balance at end of period | $ | 445 |  |  | $ | 212 |
Computation of basic and diluted loss per share |
| January 31,
| 2025 |  | 2024
| (In thousands, except per share)
Numerator |  |  |
Net income | $ | 21,644 |  |  | $ | 21,910 |
Denominator |  |  |
Weighted-average shares — basic | 16,365 |  |  | 16,295 |
Dilutive effect of common stock equivalents from equity incentive plans | 7 |  |  | 93 |
Weighted-average shares | 16,372 |  |  | 16,388 |
Net income per common share |  |  |
Basic | $ | 1.32 |  |  | $ | 1.34 |
Diluted | $ | 1.32 |  |  | $ | 1.34 |
Schedule of accumulated other comprehensive loss | The following table summarizes the changes in accumulated balances of other comprehensive income (loss) (in thousands) for the years ended January 31, 2025 and 2024:
| January 31,
| 2025 |  | 2024
Balance as of beginning of year | $ | (1,310) |  |  | $ | (2,360) |
Other comprehensive income before reclassifications | 1,874 |  |  | 679 |
Amounts reclassified from accumulated comprehensive (income) loss | (142) |  |  | 371 |
Net current period other comprehensive income | 1,732 |  |  | 1,050 |
Balance as of end of year | $ | 422 |  |  | $ | (1,310) |

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

X
- Definition Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Section 50 -Paragraph 1 -SubTopic 10 -Topic 360 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1 + Details
Name: | us-gaap_PropertyPlantAndEquipmentTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of the components of accumulated other comprehensive income (loss). + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section 45 -Paragraph 14A -Publisher FASB -URI https://asc.fasb.org/1943274/2147482790/220-10-45-14A Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 830 -SubTopic 30 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Publisher FASB -URI https://asc.fasb.org/1943274/2147481674/830-30-50-1 Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 830 -SubTopic 30 -Name Accounting Standards Codification -Section 45 -Paragraph 20 -Publisher FASB -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20 + Details
Name: | us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of the changes in carrying amount of a liability for asset retirement obligations, for changes such as new obligations, changes in estimates of existing obligations, spending on existing obligations, property dispositions, and foreign currency translation. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 410 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org/1943274/2147481850/410-20-50-1 + Details
Name: | us-gaap_ScheduleOfChangeInAssetRetirementObligationTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1 + Details
Name: | us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Topic 210 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(6)(a)) -Publisher FASB -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Topic 210 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(6)(b)) -Publisher FASB -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Topic 210 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(6)(c)) -Publisher FASB -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1 Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section 50 -Paragraph 1 -Publisher FASB -URI https://asc.fasb.org/1943274/2147483489/210-10-50-1 + Details
Name: | us-gaap_ScheduleOfInventoryCurrentTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration