| 10. Commitments (Tables) | 6 Months Ended | |||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Jun. 30, 2020 | ||||||||||||||||||||||
| Commitments and Contingencies Disclosure [Abstract] | ||||||||||||||||||||||
| Cash flow information regarding leases | Supplemental cash flow information and non-cash activity related to our operating leases are as follows: 
 
 | |||||||||||||||||||||
| Supplemental information related to operating leases | Supplemental balance sheet information related to our operating leases is as follows: 
 
 | |||||||||||||||||||||