XML 77 R63.htm IDEA: XBRL DOCUMENT v3.24.1
STOCK BASED COMPENSATION (Details - Option Activity) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Share-Based Payment Arrangement [Abstract]      
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number, Beginning Balance 171,176 140,980  
Options outstanding, weighted average exercise price $ 31.07 $ 29.47  
Options outstanding, weighted average remaining contractual life 7 years 6 months 8 years 4 months 24 days 9 years 2 months 12 days
Options granted 0 33,334  
Options granted, weighted average exercise price   $ 36.80  
Options granted, weighted average remaining contractual life   9 years 7 months 6 days  
Options exercised $ 0 $ 0  
Options forfeited or expired (1,720) (3,138)  
Options forfeited or expired, weighted average exercise price $ 23.64 $ 20.32  
Options forfeited or expired, weighted average remaining contractual life 6 years 5 years 7 months 6 days  
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number, Ending Balance 169,456 171,176 140,980
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price, Ending Balance $ 31.15 $ 31.07 $ 29.47
Options exercisable 147,977    
Option exercisable, weighted average exercise price $ 30.57    
Options exercisable, weighted average remaining contractual life 7 years 4 months 24 days