Quarterly report pursuant to Section 13 or 15(d)

Stockholders' Equity - Summary of Stock Option Activity (Details)

v3.21.2
Stockholders' Equity - Summary of Stock Option Activity (Details)
6 Months Ended
Oct. 31, 2021
USD ($)
$ / shares
shares
Apr. 30, 2021
USD ($)
$ / shares
shares
Oct. 31, 2021
USD ($)
$ / shares
shares
Number of Shares      
Balance Outstanding, October 31, 2021 (in shares) 992,050   992,050
Exercisable, October 31, 2021 (in shares) 928,457   928,457
Stock Incentive Plan and Stock Option Grants to Employees and Directors      
Number of Shares      
Balance Outstanding, April 30, 2021 (in shares)     1,214,473
Granted (in shares)     0
Exercised (in shares)     (216,752)
Forfeited (in shares)     (4,419)
Expired (in shares)     (1,252)
Balance Outstanding, October 31, 2021 (in shares) 992,050 1,214,473 992,050
Exercisable, October 31, 2021 (in shares) 928,457   928,457
Weighted Average Exercise Price      
Balance Outstanding, April 30, 2021 (in dollars per share) | $ / shares     $ 6.24
Granted (in dollars per share) | $ / shares     0
Exercised (in dollars per share) | $ / shares     5.77
Forfeited (in dollars per share) | $ / shares     4.61
Expired (in dollars per share) | $ / shares     2.76
Balance Outstanding, October 31, 2021 (in dollars per share) | $ / shares $ 6.61 $ 6.24 6.61
Exercisable, October 31, 2021 (in dollars per share) | $ / shares $ 6.72   $ 6.72
Stock Option Activity, Additional Disclosures      
Options outstanding, weighted average remaining contractual term 1 year 6 months 21 days 1 year 10 months 17 days  
Options exercisable, weighted average remaining contractual term 1 year 6 months 3 days    
Options outstanding, aggregate intrinsic value | $ $ 172,313 $ 204,719 $ 172,313
Options exercisable, aggregate intrinsic value | $ $ 161,584   $ 161,584