| K. COMMITMENTS AND CONTINGENCIES (Details - Future lease payments) | Sep. 30, 2019  USD ($) | 
|---|---|
| Future minimum operating lease payments | |
| 2019 (excluding the three months ended March 31, 2019) | $ 55,003 | 
| 2020 | 223,835 | 
| 2021 | 242,299 | 
| 2022 | 195,176 | 
| 2023 | 193,169 | 
| 2024 and thereafter | 384,119 | 
| Total minimum lease payments | 1,293,601 | 
| Less imputed interest | (277,408) | 
| Total minimum operating lease payments | $ 1,016,193 | 
| X | ||||||||||
| 
- Definition Amount of lessee's undiscounted obligation for lease payments for operating lease. Reference 1: http://www.xbrl.org/2003/role/disclosureRef 
 | 
| X | ||||||||||
| 
- Definition Amount of lessee's undiscounted obligation for lease payments for operating lease, due after fifth fiscal year following latest fiscal year. Reference 1: http://www.xbrl.org/2003/role/disclosureRef 
 | 
| X | ||||||||||
| 
- Definition Amount of lessee's undiscounted obligation for lease payments for operating lease, due in next fiscal year following latest fiscal year. Reference 1: http://www.xbrl.org/2003/role/disclosureRef 
 | 
| X | ||||||||||
| 
- Definition Amount of lessee's undiscounted obligation for lease payments for operating lease, due in fifth fiscal year following latest fiscal year. Reference 1: http://www.xbrl.org/2003/role/disclosureRef 
 | 
| X | ||||||||||
| 
- Definition Amount of lessee's undiscounted obligation for lease payments for operating lease, due in fourth fiscal year following latest fiscal year. Reference 1: http://www.xbrl.org/2003/role/disclosureRef 
 | 
| X | ||||||||||
| 
- Definition Amount of lessee's undiscounted obligation for lease payments for operating lease, due in third fiscal year following latest fiscal year. Reference 1: http://www.xbrl.org/2003/role/disclosureRef 
 | 
| X | ||||||||||
| 
- Definition Amount of lessee's undiscounted obligation for lease payments for operating lease, due in second fiscal year following latest fiscal year. Reference 1: http://www.xbrl.org/2003/role/disclosureRef 
 | 
| X | ||||||||||
| 
- Definition Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease. Reference 1: http://www.xbrl.org/2003/role/disclosureRef 
 | 
| X | ||||||||||
| 
- References No definition available. 
 | 
| X | ||||||||||
| 
- Definition Present value of lessee's discounted obligation for lease payments from operating lease. Reference 1: http://www.xbrl.org/2003/role/disclosureRef 
 |