XML 75 R35.htm IDEA: XBRL DOCUMENT
v3.22.1

Note 10 - Stock-based Compensation (Tables) | 12 Months Ended
--- | ---
Dec. 31, 2021
Notes Tables |
Share-based Payment Arrangement, Option, Activity [Table Text Block] |
|  | 2021 |  |  | 2020 |
|  | Shares |  |  | Wtd. Avg. Exercise Price |  |  | Shares |  |  | Wtd. Avg. Exercise Price |
Outstanding as of beginning of year |  |  | 844,455 |  |  | $ | 2.00 |  |  |  | 1,570,455 |  |  | $ | 1.96 |
Exercised |  |  | (183,064 | ) |  |  | 1.61 |  |  |  | - |  |  |  | - |
Forfeited |  |  | (1,146 | ) |  |  | 5.69 |  |  |  | (726,000 | ) |  |  | 1.91 |
Expired |  |  | (35,714 | ) |  |  | 1.73 |  |  |  | - |  |  |  | - |
Outstanding as of end of year |  |  | 624,531 |  |  | $ | 2.13 |  |  |  | 844,455 |  |  | $ | 2.00 |
Stock options exercisable at year end |  |  | 624,531 |  |  | $ | 2.13 |  |  |  | 832,478 |  |  | $ | 1.98 |
|  | 2021 |  |  | 2020 |
|  | Shares |  |  | Wtd. Avg. Exercise Price |  |  | Shares |  |  | Wtd. Avg. Exercise Price |
Outstanding as of beginning of year |  |  | 686,001 |  |  | $ | 1.64 |  |  |  | 737,497 |  |  | $ | 1.64 |
Exercised |  |  | (686,001 | ) |  |  | 1.64 |  |  |  | (51,496 | ) |  |  | 1.64 |
Outstanding as of end of year |  |  | - |  |  | $ | - |  |  |  | 686,001 |  |  | $ | 1.64 |
Stock options exercisable as of year end |  |  | - |  |  | $ | - |  |  |  | 686,001 |  |  | $ | 1.64 |
Share-based Payment Arrangement, Option, Exercise Price Range [Table Text Block] |
Range of Exercise Prices |  |  | Number Outstanding as of December 31, 2021 |  |  | Weighted Average Remaining Contractual Life |  |  | Weighted Average Exercise Price |
$1.00 | - | 1.50 |  |  |  | 26,428 |  |  |  | 1.05 |  |  | $ | 1.38 |
$1.51 | - | 2.00 |  |  |  | 290,760 |  |  |  | 3.27 |  |  |  | 1.87 |
$2.01 | - | 2.50 |  |  |  | 265,775 |  |  |  | 3.35 |  |  |  | 2.06 |
$2.51 | - | 8.60 |  |  |  | 41,568 |  |  |  | 3.75 |  |  |  | 4.86 |
|  |  |  |  |  | 624,531 |  |  |  | 3.24 |  |  | $ | 2.13 |
Share-based Payment Arrangement, Restricted Stock and Restricted Stock Unit, Activity [Table Text Block] |
|  | 2021 |  |  | 2020 |
|  | Shares |  |  | Wtd. Avg. Grant Date Fair Value |  |  | Shares |  |  | Wtd. Avg. Grant Date Fair Value |
Outstanding as of beginning of year |  |  | 930,854 |  |  | $ | 19.31 |  |  |  | 429,399 |  |  | $ | 13.25 |
Granted |  |  | 801,484 |  |  |  | 47.20 |  |  |  | 717,267 |  |  |  | 20.88 |
Granted in lieu of cash |  |  | - |  |  |  | - |  |  |  | 34,154 |  |  |  | 9.18 |
Vested |  |  | (378,502 | ) |  |  | 19.31 |  |  |  | (208,858 | ) |  |  | 11.32 |
Forfeited |  |  | (141,053 | ) |  |  | 36.95 |  |  |  | (41,108 | ) |  |  | 15.47 |
Non-vested as of year end |  |  | 1,212,783 |  |  | $ | 37.48 |  |  |  | 930,854 |  |  | $ | 19.31 |
|  | 2021 |  |  | 2020 |
|  | Shares |  |  | Wtd. Avg. Grant Date Fair Value |  |  | Shares |  |  | Wtd. Avg. Grant Date Fair Value |
Outstanding as of beginning of year |  |  | - |  |  | $ | - |  |  |  | - |  |  | $ | - |
Granted |  |  | - |  |  |  | - |  |  |  | 82,805 |  |  |  | 9.18 |
Vested |  |  | - |  |  |  | - |  |  |  | (82,805 | ) |  |  | 9.18 |
Non-vested as of year end |  |  | - |  |  | $ | - |  |  |  | - |  |  | $ | - |
|  | 2021 |  |  | 2020 |
|  | Shares |  |  | Wtd. Avg. Grant Date Fair Value |  |  | Shares |  |  | Wtd. Avg. Grant Date Fair Value |
Outstanding as of beginning of year |  |  | 224,774 |  |  | $ | 19.20 |  |  |  | 123,851 |  |  | $ | 26.99 |
Granted |  |  | 152,665 |  |  |  | 32.50 |  |  |  | 109,140 |  |  |  | 10.95 |
Vested |  |  | (231,268 | ) |  |  | 26.98 |  |  |  | - |  |  |  | - |
Forfeited |  |  | (6,415 | ) |  |  | 40.65 |  |  |  | (8,217 | ) |  |  | 27.02 |
Non-vested as of year end |  |  | 139,756 |  |  | $ | 19.86 |  |  |  | 224,774 |  |  | $ | 19.20 |
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block] |
|  | 2021 |  |  | 2020 |  |  | 2019 |
Research and development costs |  | $ | 1,906 |  |  | $ | 1,012 |  |  | $ | 571 |
Sales and marketing costs |  |  | 1,788 |  |  |  | 852 |  |  |  | 711 |
General and administrative costs |  |  | 8,061 |  |  |  | 3,518 |  |  |  | 1,584 |
Cost of revenue |  |  | 2,201 |  |  |  | 599 |  |  |  | 177 |
Total |  | $ | 13,956 |  |  | $ | 5,981 |  |  | $ | 3,043 |

X
- Definition Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (h)(1) -URI http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SAB Topic 14.F) -URI http://asc.fasb.org/extlink&oid=122041274&loc=d3e301413-122809 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 1 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901 + Details
Name: | us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of option exercise prices, by grouped ranges, including the upper and lower limits of the price range, the number of shares under option, weighted average exercise price and remaining contractual option terms. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901 + Details
Name: | us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (d) -URI http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (e) -URI http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(1) -URI http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901 + Details
Name: | us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Disclosure of the number and weighted-average grant date fair value for restricted stock and restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock and restricted stock units that were granted, vested, or forfeited during the year. + References No definition available. + Details
Name: | us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_TableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration