XML 40 R30.htm IDEA: XBRL DOCUMENT v3.23.3
Note 12 - Stock-based Compensation (Tables)
9 Months Ended
Sep. 30, 2023
Notes Tables  
Share-Based Payment Arrangement, Option, Activity [Table Text Block]
  

Number of Shares

  

Weighted Average Exercise Price

  

Weighted Average of Remaining Contractual Life (in years)

  

Aggregate Intrinsic Value

 

Outstanding at December 31, 2022

  802,163  $12.23         

Issued

    $         

Exercised

  (516,446) $5.98         

Expired/Forfeited

  (1,999) $15.30         

Outstanding at September 30, 2023

  283,718  $23.57   2.0  $2,869,619 

Exercisable at September 30, 2023

  200,638  $22.08   1.9  $2,288,407