XML 39 R27.htm IDEA: XBRL DOCUMENT v3.24.2
Net Income Per Share (Tables)
6 Months Ended
Jun. 30, 2024
Earnings Per Share [Abstract]  
Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]
Basic and diluted net income per share are calculated as follows (in thousands, except per share amounts):
Three Months Ended June 30,Six Months Ended June 30,
2024202320242023
Basic and diluted net income per share
Numerator:
Net income$9,476 $11,626 $19,202 $15,584 
Denominator:
Weighted-average shares outstanding - basic74,366 74,017 74,401 74,009 
Effect of dilutive potential common shares from stock options, stock awards and employee stock purchase plan1,131 1,411 1,031 1,503 
Weighted-average shares outstanding - diluted75,497 75,428 75,432 75,512 
Net income per share:
Basic$0.13 $0.16 $0.26 $0.21 
Diluted$0.13 $0.15 $0.25 $0.21 
Summary of Anti-dilutive Shares
The following table presents common shares related to potentially dilutive shares excluded from the calculation of diluted net income per share as their effect would have been anti-dilutive (in thousands):

Three Months Ended June 30,Six Months Ended June 30,
2024202320242023
Stock options, restricted stock units and employee stock purchase rights89 89 67 63