XML 67 R52.htm IDEA: XBRL DOCUMENT v3.22.0.1
Note 20 - Stock-based Compensation (Tables)
12 Months Ended
Dec. 31, 2021
Notes Tables  
Share-based Payment Arrangement, Option, Activity [Table Text Block]
          

Weighted average

     
      

Weighted

  

remaining

  

Aggregate

 
  

Number of

  

average

  

contractual life

  

intrinsic

 
  

options

  

exercise price

  

(years)

  

value

 

Shares issuable under options - December 31, 2019

  2,001,600  $58.96         

Granted

  547,250   85.79         

Exercised

  (344,225)  35.86         

Forfeited

  (14,500)  70.07         

Shares issuable under options - December 31, 2020

  2,190,125  $69.22         

Granted

  682,500   136.38         

Exercised

  (292,450)  49.38         

Forfeited

  (29,300)  80.15         

Shares issuable under options - December 31, 2021

  2,550,875  $89.34   3.1  $147,597 

Options exercisable - December 31,2021

  978,188  $72.14   2.1  $73,420 
Stock Options Exercised [Table Text Block]
  

Year ended December 31,

 
  

2021

  

2020

 
         

Number of options exercised

  292,450   344,225 
         

Aggregate fair value

 $32,808  $25,919 

Intrinsic value

  14,440   13,576 

Amount of cash received

  18,367   12,343 
         

Tax benefit recognized

 $937  $102 
Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]
  

As at December 31,

 
  

2021

  

2020

 
         

Risk free rate

  0.8%  0.2%

Expected life in years

  4.75   4.41 

Expected volatility

  39.4%  36.5%

Dividend yield

  0.2%  0.1%
         

Weighted average fair value per option granted

 $46.12  $28.33