XML 35 R22.htm IDEA: XBRL DOCUMENT v3.24.1
Note 5 - Stock-based Compensation (Tables)
12 Months Ended
Dec. 31, 2023
Notes Tables  
Disclosure of Share-Based Compensation Arrangements by Share-Based Payment Award [Table Text Block]
   

Year ended December 31,

 
   

2023

   

2022

 

Stock options

  $ 522     $ 761  

Restricted stock

    6       15  

Total

  $ 528     $ 776  
Schedule of Share-Based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]
   

Year ended December 31,

 
   

2023

   

2022

 

Risk-free interest rate

    4.1 %     4.2 %

Volatility factor

    57 %     50 %

Weighted average expected life (years)

    4.9       4.8  

Forfeiture rate

    10.0 %     10.0 %

Dividends

    0.0 %     0.0 %
Share-Based Payment Arrangement, Option, Activity [Table Text Block]
Year ended December 31, 2023  
   

Number

of shares

   

Weighted

average

exercise

price

per share

   

Weighted

average

remaining

contractual

term

   

Aggregate

intrinsic

value

 

Shares under option – January 1

    1,425,693     $ 6.72                  

Options granted

    231,650       6.69                  

Options exercised

    (254,393 )     5.83                  

Options forfeited or expired

    (152,355 )     5.06                  

Shares under option – December 31

    1,250,595     $ 7.10       3.97     $ 515  

Vested and expected to vest - December 31

    1,151,228     $ 7.17       3.79     $ 452  
                                 

Options exercisable – December 31

    789,209     $ 7.56       2.69     $ 241  
Year ended December 31, 2022  
   

Number

of shares

   

Weighted

average

exercise

price

per share

 

Shares under option – January 1

    1,306,824     $ 6.87  

Options granted

    289,950       5.42  

Options exercised

    (59,500 )     3.82  

Options forfeited or expired

    (111,581 )     6.56  

Shares under option – December 31

    1,425,693     $ 6.72  
                 

Options exercisable – December 31

    881,804     $ 7.13  
Share-Based Payment Arrangement, Option, Exercise Price Range [Table Text Block]
       

Option outstanding

   

Options exercisable

 

Range of

exercise prices

 

Number of

outstanding

options

   

Weighted-

average

remaining

contractual

life

   

Weighted-

average

exercise

price

   

Number of

options

exercisable

   

Weighted-

average

exercise

price

 

$4.07

- $6.36     338,364       4.79     $ 5.42       156,099     $ 5.54  

$6.51

- $6.84     353,733       5.54       6.71       134,583       6.51  

$6.97

- $8.25     334,165       2.89       7.64       290,355       7.74  

$8.45

- $9.96     224,333       1.88       9.44       208,172       9.51  
                                             

$4.07

- $9.96     1,250,595       3.97     $ 7.10       789,209     $ 7.56