XML 67 R59.htm IDEA: XBRL DOCUMENT v3.24.0.1
Stock Option Plans - Stock Option Activity (Details) - $ / shares
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Share-Based Payment Arrangement [Abstract]    
Options outstanding at the beginning of the year 1,617,672 1,537,052
Options granted 163,500 133,250
Options forfeited (6,938) (6,562)
Options exercised (175,473) (46,068)
Options outstanding at the end of the year 1,598,761 1,617,672
Options exercisable at the end of the year 1,138,706 1,132,174
Common stock available for future grants at the end of the year 3,250 166,750
Weighted average exercise price per share:    
Granted $ 30.47 $ 29.35
Forfeited 20.68 31.50
Exercised 16.95 12.73
Outstanding 26.77 25.30
Exercisable $ 24.82 $ 22.83