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

Number of Stock Options

  

Weighted-Average Exercise Price

 

Outstanding as of December 31, 2022

  8,680  $12.95 

Exercised

  (7,388)  12.73 

Forfeited/cancelled/expired

  (1,292)  14.24 

Outstanding as of September 30, 2023

  -   - 

Exercisable as of September 30, 2023

  -  $- 
Nonvested Restricted Stock Shares Activity [Table Text Block]
  Nonvested Shares  Weighted Average Grant Date Fair Value 

Nonvested as of December 31, 2022

  85,931  $26.20 

Granted

  93,147   16.19 

Vested

  (47,067)  27.59 

Forfeited/cancelled/expired

  (9,090)  21.76 

Nonvested as of September 30, 2023

  122,921  $18.41 
Schedule of Nonvested Performance-Based Units Activity [Table Text Block]
  Units (expected)  Units (maximum)  Weighted Average Grant Date Fair Value 

Unearned as of December 31, 2022

  195,265      $17.98 

Awarded

  85,158       17.93 

Vested shares

  (116,192)      10.77 

Unearned as of September 30, 2023

  164,231   233,087  $23.06 
Schedule of Nonvested Restricted Stock Units Activity [Table Text Block]
  Units (expected)  Weighted Average Grant Date Fair Value 

Unearned as of December 31, 2022

  120,035  $23.84 

Awarded

  146,857   18.97 

Vested shares

  (78,544)  19.71 

Unearned as of September 30, 2023

  188,348  $21.77