XML 31 R19.htm IDEA: XBRL DOCUMENT
v3.24.2

Net Income Per Share | 6 Months Ended
--- | ---
Jun. 30, 2024
Earnings Per Share [Abstract] |
Net Income Per Share | NET INCOME (LOSS) PER SHARE Basic net income (loss) per share has been computed by dividing net income (loss) by the basic number of weighted average shares outstanding. Diluted net income (loss) per share has been computed by dividing net income (loss) by the diluted number of weighted average shares outstanding using the treasury stock method. The share effect is as follows:
| For the Three Months Ended June 30, |  | For the Six Months Ended June 30,
| 2024 |  | 2023 |  | 2024 |  | 2023
Weighted average shares outstanding: |  |  |  |  |  |  |
Common shares | 12,118,832 |  |  | 12,832,945 |  |  | 12,218,419 |  |  | 12,821,478 |
Vested restricted stock units | 163,342 |  |  | 216,990 |  |  | 163,237 |  |  | 232,277 |
Basic number of weighted average shares outstanding | 12,282,174 |  |  | 13,049,935 |  |  | 12,381,656 |  |  | 13,053,755 |
Dilutive effect of restricted stock units and stock options | — |  |  | 50,026 |  |  | 151,590 |  |  | 32,233 |
Dilutive number of weighted average shares outstanding | 12,282,174 |  |  | 13,099,961 |  |  | 12,533,246 |  |  | 13,085,988 |
The potential effects of stock options and restricted stock units were excluded from the diluted earnings per share calculation for the three months ended June 30, 2024 because their inclusion in a net loss period would have reduced the net loss per share. The following outstanding stock awards were excluded from the computation of diluted net income (loss) per share because their inclusion would have been anti-dilutive:
| For the Three Months Ended June 30, |  | For the Six Months Ended June 30,
| 2024 |  | 2023 |  | 2024 |  | 2023
Stock options | 195,324 |  |  | 228,625 |  |  | 67,750 |  |  | 241,201 |
Restricted stock units | 22,222 |  |  | 6,031 |  |  | 2,173 |  |  | 5,814 |
Total | 217,546 |  |  | 234,656 |  |  | 69,923 |  |  | 247,015 |

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