XML 14 R3.htm IDEA: XBRL DOCUMENT v3.20.1
CONSOLIDATED BALANCE SHEETS (Parenthetical) - USD ($)
Dec. 31, 2019
Dec. 31, 2018
Dec. 31, 2017
Statement Of Financial Position [Abstract]      
Allowance for doubtful accounts receivable $ 767,464 $ 929,339 $ 699,102
Preferred stock, par value $ 0.001 $ 0.001  
Preferred stock, shares authorized 10,000,000 10,000,000  
Preferred stock, shares issued 0 0  
Preferred stock, shares outstanding 0 0  
Common stock, par value $ 0.001 $ 0.001  
Common stock, shares authorized 200,000,000 200,000,000  
Common stock, shares issued 15,372,905 15,328,870  
Common stock, shares outstanding 15,372,905 15,328,870