| STOCKHOLDERS EQUITY (DEFICIT) (Tables)
 | 9 Months Ended | 
| Sep. 30, 2021 | 
|---|
| STOCKHOLDERS EQUITY (DEFICIT) |  | 
| Summary of the status of the Company's Options related to the 2019 Incentive Plan | 
|   |   | September 30, 2021 |   |   | December 31, 2020 |   |  
|   |   | Number of Options |   |   | Weighted Average Exercise Price |   |   | Number of Options |   |   | Weighted Average Exercise Price |   |  
| Outstanding, beginning of year |   |   | 606,250 |   |   | $ | 9.67 |   |   |   | 362,500 |   |   | $ | 8.11 |   |  
| Issued |   |   | 175,000 |   |   |   | 11.22 |   |   |   | 243,750 |   |   |   | 11.98 |   |  
| Outstanding, end of period |   |   | 781,250 |   |   | $ | 10.02 |   |   |   | 606,250 |   |   | $ | 9.67 |   |  | 
| Schedule of Options outstanding and exercisable | 
| Outstanding Options |   |   | Exercisable Options |   |  
| Range of  Exercise  Price |   | Number |   |   | Average Weighted Remaining Contractual Life in Years |   |   Range of  Exercise Price |   | Number |   |   | Weighted Average Exercise Price |   |  
| $  | 8.00-8.99  |   |   | 375,000 |   |   |   | 7.85 |   |  $ |  8.00-8.99  |   |   | 370,313 |   |   | $ | 8.04 |   |  
|   | 9.00-9.99 |   |   | 25,000 |   |   |   | 3.88 |   |   | 9.00-9.99 |   |   | 25,000 |   |   |   | 9.60 |   |  
|   | 11.00-11.99 |   |   | 187,500 |   |   |   | 9.19 |   |   | 11.00-11.99 |   |   | 78,125 |   |   |   | 11.25 |   |  
|   | 12.00-12.99 |   |   | 193,750 |   |   |   | 4.04 |   |   | 12.00-12.99 |   |   | 150,000 |   |   |   | 12.67 |   |  
|   |   |   |   | 781,250 |   |   |   | 7.10 |   |   |   |   |   | 623,438 |   |   | $ | 9.35 |   |  | 
| Summary of unregistered warrants | 
|   |   | September 30, 2021 |   |   | December 31, 2020 |   |  
|   |   | Number of Warrants |   |   | Weighted Average Exercise Price |   |   | Number of Warrants |   |   | Weighted Average Exercise Price |   |  
| Outstanding, beginning of year |   |   | 2,502,291 |   |   | $ | 7.67 |   |   |   | 2,427,634 |   |   | $ | 7.43 |   |  
| Issued |   |   | 226,426 |   |   |   | 5.64 |   |   |   | 287,564 |   |   |   | 9.34 |   |  
| Exercised |   |   | (139,099 | ) |   |   | 6.41 |   |   |   | (179,564 | ) |   |   | 7.26 |   |  
| Cancelled |   |   | - |   |   |   | - |   |   |   | - |   |   |   | - |   |  
| Expired |   |   | (23,980 | ) |   |   | 5.82 |   |   |   | (33,343 | ) |   |   | 7.08 |   |  
| Outstanding, end of period |   |   | 2,565,638 |   |   | $ | 7.57 |   |   |   | 2,502,291 |   |   | $ | 7.67 |   |  | 
| Schedule of unregistered warrants outstanding and exercisable by price range | 
| Outstanding Warrants |   |   | Exercisable Warrants |   |  
|   Exercise  Price |   | Number |   |   | Average Weighted Remaining Contractual Life in Years |   |   Exercise  Price |   | Number |   |   | Weighted Average Exercise Price |   |  
|   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |  
|  $  | 4.00-4.99  |   |   | 200,625 |   |   |   | 0.84 |   |  $  | 4.00-4.99  |   |   | 200,625 |   |   | $ | 4.80 |   |  
|   | 5.00-5.99 |   |   | 252,050 |   |   |   | 4.21 |   |   | 5.00-5.99 |   |   | 252,050 |   |   |   | 5.51 |   |  
|   | 6.00-6.99 |   |   | 241,716 |   |   |   | 2.80 |   |   | 6.00-6.99 |   |   | 241,716 |   |   |   | 6.40 |   |  
|   | 7.00-7.99 |   |   | 1,250 |   |   |   | 0.83 |   |   | 7.00-7.99 |   |   | 1,250 |   |   |   | 7.20 |   |  
|   | 8.00-8.99 |   |   | 1,595,558 |   |   |   | 1.66 |   |   | 8.00-8.99 |   |   | 1,595,558 |   |   |   | 8.02 |   |  
|   | 9.00-9.99 |   |   | 231,938 |   |   |   | 3.94 |   |   | 9.00-9.99 |   |   | 231,938 |   |   |   | 9.60 |   |  
|   | 10.00-10.99 |   |   | 1,688 |   |   |   | 4.62 |   |   | 10.00-10.99 |   |   | 1,688 |   |   |   | 10.40 |   |  
|   | 11.00-11.99 |   |   | 35,813 |   |   |   | 2.25 |   |   | 11.00-11.99 |   |   | 35,813 |   |   |   | 11.20 |   |  
|   | 14.00-14.99 |   |   | 5,000 |   |   |   | 3.24 |   |   | 14.00-14.99 |   |   | 5,000 |   |   |   | 14.40 |   |  
|   |   |   |   | 2,565,638 |   |   |   | 2.17 |   |   |   |   |   | 2,565,638 |   |   | $ | 7.57 |   |  | 
| Schedule of Common Stock Warrants - Registered | 
|   |   | September 30, 2021 |   |   | December 31, 2020 |   |  
|   |   | Number of Registered Warrants |   |   | Weighted Average Exercise Price |   |   | Number of Registered Warrants |   |   | Weighted Average Exercise Price |   |  
| Outstanding, beginning of year |   |   | - |   |   | $ | - |   |   |   | - |   |   | $ | - |   |  
| Issued |   |   | 3,174,000 |   |   |   | 5.50 |   |   |   | - |   |   |   | - |   |  
| Exercised |   |   | (198,503 | ) |   |   | 5.50 |   |   |   | - |   |   |   | - |   |  
| Cancelled |   |   | - |   |   |   | - |   |   |   | - |   |   |   | - |   |  
| Expired |   |   | - |   |   |   | - |   |   |   | - |   |   |   | - |   |  
| Outstanding, end of period |   |   | 2,975,497 |   |   | $ | 5.50 |   |   |   | - |   |   | $ | - |   |  | 
| Schedule of registered warrants outstanding and exercisable by price range | 
| Outstanding Registered Warrants |   |   | Exercisable Registered Warrants |   |  
| Exercise  Price |   |   | Number |   |   | Average Weighted Remaining Contractual Life in Years |   |   | Exercise  Price |   |   | Number |   |   | Weighted Average Exercise Price |   |  
|   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |  
| $ | 5.50 |   |   |   | 2,975,497 |   |   |   | 4.64 |   |   | $ | 5.50 |   |   |   | 2,975,497 |   |   |   | 5.50 |   |  
|   |   |   |   |   | 2,975,497 |   |   |   | 4.64 |   |   |   |   |   |   |   | 2,975,497 |   |   | $ | 5.50 |   |  |