XML 57 R42.htm IDEA: XBRL DOCUMENT
v3.24.0.1

Earnings Per Share (Tables) | 12 Months Ended
--- | ---
Jan. 31, 2024
Earnings Per Share |
Schedule of computation of basic and diluted earnings per share | ​
​ | ​ | ​ | ​ | ​ | ​ | ​
​ |  | January 31, |  | January 31, |  | January 31,
Year Ended | ​ | 2024 | ​ | 2023 | ​ | 2022
​ | ​ | ​ | ​ | ​ | ​ | ​
Net income for purposes of calculating basic and diluted earnings per share |  | 115,907 |  | 102,236 |  | 86,282
​ | ​ | ​ | ​ | ​ | ​ | ​
Weighted average shares outstanding |  | 85,068 |  | 84,791 |  | 84,591
Dilutive effect of employee stock options |  | 505 |  | 455 |  | 482
Dilutive effect of restricted and performance share units |  | 1,245 |  | 1,205 |  | 1,127
Weighted average common and common equivalent shares outstanding |  | 86,818 |  | 86,451 |  | 86,200
Earnings per share |  | ​ |  | ​ |  |
Basic |  | 1.36 |  | 1.21 |  | 1.02
Diluted |  | 1.34 |  | 1.18 |  | 1.00

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 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