XML 18 R9.htm IDEA: XBRL DOCUMENT
v3.23.3

Net Income per Common Share | 9 Months Ended
--- | ---
Sep. 30, 2023
Earnings Per Share [Abstract] |
Net Income per Common Share | Net Income per Common ShareBasic net income per share is computed based on the weighted-average number of common shares outstanding. Diluted net income per share is computed based on the weighted-average number of common shares outstanding, increased by the number of additional shares that would have been outstanding had potentially dilutive common shares been issued and reduced by the number of shares the Company could have repurchased from the proceeds from issuance of the potentially dilutive shares. Potentially dilutive shares of common stock include stock options and other stock-based awards granted under stock-based compensation plans and shares committed to be purchased under the employee stock purchase plan. Performance stock units are excluded from the calculation of dilutive potential common shares until the performance conditions have been satisfied. Anti-dilutive options were excluded from the calculation of diluted weighted average shares outstanding and were 393,592 and 210,443 for the three months ended September 30, 2023 and 2022, respectively, and 372,353 and 202,901 for the nine months ended September 30, 2023 and 2022, respectively. The table below sets forth the computation of basic and diluted net (loss) income per share:
| Three Months Ended September 30, |  | Nine Months Ended September 30,
(in thousands, except share and per share amounts) | 2023 |  | 2022 |  | 2023 |  | 2022
Net income | $ | 7,954 |  |  | $ | 3,951 |  |  | $ | 10,230 |  |  | $ | 11,603 |
Basic - weighted-average shares outstanding: | 26,023,830 |  | 27,505,097 |  | 26,296,304 |  | 27,512,057
Effect of dilutive securities: |  |  |  |  |  |  |
Employee stock options and other | 4,626 |  | 3,120 |  | 31,302 |  | 10,677
Diluted - weighted-average shares outstanding: | 26,028,456 |  | 27,508,217 |  | 26,327,606 |  | 27,522,734
Net (loss) income per share: |  |  |  |  |  |  |
Basic | $ | 0.31 |  |  | $ | 0.14 |  |  | $ | 0.39 |  |  | $ | 0.42 |
Diluted | $ | 0.31 |  |  | $ | 0.14 |  |  | $ | 0.39 |  |  | $ | 0.42 |

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