XML 87 R73.htm IDEA: XBRL DOCUMENT v3.20.1
Note 9 - Stockholders' Equity - Summary of Option Activity (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
[1]
Outstanding (in shares) [1] 1,462,575  
Outstanding, weighted average exercise price (in dollars per share) [1] $ 16.41  
Outstanding, weighted average contractual term (Year) 4 years 113 days [2] 4 years 197 days
Outstanding, aggregate intrinsic value $ 13,366,595 [2] $ 12,214,422
Granted (in shares) 195,379  
Granted, weighted average exercise price (in dollars per share) $ 35.53  
Exercised (in shares) [3] (509,693)  
Exercised, weighted average exercise price (in dollars per share) [3] $ 9.53  
Exercised, aggregate intrinsic value [3] $ 11,488,292  
Canceled / Expired (in shares) (101,167)  
Canceled / Expired, weighted average exercise price (in dollars per share) $ 17.90  
Outstanding (in shares) 1,047,094 [2] 1,462,575
Outstanding, weighted average exercise price (in dollars per share) $ 23.19 [2] $ 16.41
Vested and exercisable (in shares) [4] 309,501  
Vested and exercisable, weighted average exercise price (in dollars per share) [4] $ 19.64  
Vested and exercisable, weighted average contractual term (Year) [4] 3 years 182 days  
Vested and exercisable, aggregate intrinsic value [4] $ 5,046,733  
Expected to vest (in shares) 737,593  
Expected to vest, weighted average exercise price (in dollars per share) $ 24.68  
Expected to vest, weighted average contractual term (Year) 4 years 237 days  
Total (in shares) 1,047,094  
[1] The aggregate intrinsic value represents the difference between the exercise price and $23.64, the closing price of our stock on December 31, 2018, for all in-the-money options outstanding.
[2] The aggregate intrinsic value represents the difference between the exercise price and $35.95, the closing price of our stock on December 31, 2019, for all in-the-money options outstanding.
[3] The aggregate intrinsic value of shares exercised represents the difference between the exercise price and the closing price of our stock on the date of exercise.
[4] The aggregate intrinsic value represents the difference between the exercise price and $35.95, the closing price of our stock on December 31, 2019, for all in-the-money options vested and exercisable as of that date.