XML 39 R28.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 8 - Stock-based Compensation (Tables)
9 Months Ended
Sep. 30, 2022
Notes Tables  
Share-Based Payment Arrangement, Option, Activity [Table Text Block]
  Number of Stock Options  Weighted-Average Exercise Price  Weighted Average Remaining Contractual Term (in years)  Aggregate Intrinsic Value 

Outstanding as of December 31, 2021

  23,766  $9.94         

Granted

  -   -         

Exercised

  (15,086)  8.21         

Forfeited/cancelled/expired

  -   -         

Outstanding as of September 30, 2022

  8,680   12.95   0.54  $87,691 

Exercisable as of September 30, 2022

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

Nonvested as of December 31, 2021

  82,693  $21.78 

Granted

  53,543   30.76 

Vested

  (42,815)  25.00 

Forfeited/cancelled/expired

  (374)  30.99 

Nonvested as of September 30, 2022

  93,047  $25.43 
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, 2021

  209,995      $16.18 

Awarded

  34,874       32.80 

Vested shares

  (49,604)      20.79 

Unearned as of September 30, 2022

  195,265   221,541  $17.98 
Schedule of Nonvested Restricted Stock Units Activity [Table Text Block]
  Units (expected)  Weighted Average Grant Date Fair Value 

Unearned as of December 31, 2021

  136,948  $16.52 

Awarded

  52,312   32.80 

Vested shares

  (69,225)  16.13 

Unearned as of September 30, 2022

  120,035  $23.84