Quarterly report pursuant to Section 13 or 15(d)

Stockholders' Equity - Significant Option Groups Outstanding and Exercisable Option and its Price and Contractual Life (Detail)

v3.23.2
Stockholders' Equity - Significant Option Groups Outstanding and Exercisable Option and its Price and Contractual Life (Detail)
6 Months Ended
May 31, 2023
$ / shares
shares
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Outstanding, Outstanding | shares 398,678
Outstanding, Weighted Average Remaining Contractual Life (Years) 4 years 9 months 10 days
Outstanding, Weighted Average Exercise Price $ 7.37
Exercisable, Outstanding | shares 286,385
Exercisable, Weighted Average Exercise Price $ 7.44
Range 1 [Member]  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Range of Exercise Prices Minimum 3.01
Range of Exercise Prices Maximum $ 4.00
Outstanding, Outstanding | shares 30,000
Outstanding, Weighted Average Remaining Contractual Life (Years) 2 years 2 months 26 days
Outstanding, Weighted Average Exercise Price $ 3.13
Exercisable, Outstanding | shares 30,000
Exercisable, Weighted Average Exercise Price $ 3.13
Range 2 [Member]  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Range of Exercise Prices Minimum 4.01
Range of Exercise Prices Maximum $ 5.00
Outstanding, Outstanding | shares 113,000
Outstanding, Weighted Average Remaining Contractual Life (Years) 4 years 7 months 6 days
Outstanding, Weighted Average Exercise Price $ 4.68
Exercisable, Outstanding | shares 50,000
Exercisable, Weighted Average Exercise Price $ 4.62
Range 3 [Member]  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Range of Exercise Prices Minimum 6.01
Range of Exercise Prices Maximum $ 7.00
Outstanding, Outstanding | shares 14,433
Outstanding, Weighted Average Remaining Contractual Life (Years) 7 years 8 months 8 days
Outstanding, Weighted Average Exercise Price $ 6.50
Exercisable, Outstanding | shares 10,899
Exercisable, Weighted Average Exercise Price $ 6.51
Range 4 [Member]  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Range of Exercise Prices Minimum 7.01
Range of Exercise Prices Maximum $ 8.00
Outstanding, Outstanding | shares 151,145
Outstanding, Weighted Average Remaining Contractual Life (Years) 5 years 9 months 25 days
Outstanding, Weighted Average Exercise Price $ 7.54
Exercisable, Outstanding | shares 138,543
Exercisable, Weighted Average Exercise Price $ 7.50
Range 5 [Member]  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Range of Exercise Prices Minimum 9.01
Range of Exercise Prices Maximum $ 10.00
Outstanding, Outstanding | shares 29,000
Outstanding, Weighted Average Remaining Contractual Life (Years) 4 years 9 months 7 days
Outstanding, Weighted Average Exercise Price $ 9.37
Exercisable, Outstanding | shares 14,516
Exercisable, Weighted Average Exercise Price $ 9.37
Range 6 [Member]  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Range of Exercise Prices Minimum 12.01
Range of Exercise Prices Maximum $ 13.00
Outstanding, Outstanding | shares 16,653
Outstanding, Weighted Average Remaining Contractual Life (Years) 7 years 2 months 23 days
Outstanding, Weighted Average Exercise Price $ 12.54
Exercisable, Outstanding | shares 12,799
Exercisable, Weighted Average Exercise Price $ 12.58
Range 7 [Member]  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Range of Exercise Prices Minimum 13.01
Range of Exercise Prices Maximum $ 14.00
Outstanding, Outstanding | shares 44,447
Outstanding, Weighted Average Remaining Contractual Life (Years) 1 year 6 months 25 days
Outstanding, Weighted Average Exercise Price $ 13.50
Exercisable, Outstanding | shares 29,628
Exercisable, Weighted Average Exercise Price $ 13.50