XML 50 R54.htm IDEA: XBRL DOCUMENT
v3.20.1

9. STOCKHOLDERS' EQUITY (Details 3) | 12 Months Ended
--- | ---
Dec. 31, 2019 $ / shares shares
Outstanding warrants, number | 17,240,523
Average weighted remaining contractual life in years, warrant | 1 year 9 months 22 days
Exercisable warrants, number | 17,240,523
Weighted average exercise price, exercisable warrants | $ / shares | $ 0.39
0.08 Range |
Outstanding warrants, number | 250,000
Average weighted remaining contractual life in years, warrant | 3 years 10 months 24 days
Exercisable warrants, number | 250,000
Weighted average exercise price, exercisable warrants | $ / shares | $ 0.08
0.10 Range |
Outstanding warrants, number | 1,265,000
Average weighted remaining contractual life in years, warrant | 3 years 9 months 4 days
Exercisable warrants, number | 1,265,000
Weighted average exercise price, exercisable warrants | $ / shares | $ 0.10
0.12 Range |
Outstanding warrants, number | 3,750,000
Average weighted remaining contractual life in years, warrant | 2 years 11 months 1 day
Exercisable warrants, number | 3,750,000
Weighted average exercise price, exercisable warrants | $ / shares | $ 0.12
0.14 Range |
Outstanding warrants, number | 50,000
Average weighted remaining contractual life in years, warrant | 4 years 3 months 18 days
Exercisable warrants, number | 50,000
Weighted average exercise price, exercisable warrants | $ / shares | $ 0.14
0.17 Range |
Outstanding warrants, number | 10,000
Average weighted remaining contractual life in years, warrant | 2 years 9 months 25 days
Exercisable warrants, number | 10,000
Weighted average exercise price, exercisable warrants | $ / shares | $ 0.17
0.27 Range |
Outstanding warrants, number | 250,000
Average weighted remaining contractual life in years, warrant | 2 years
Exercisable warrants, number | 250,000
Weighted average exercise price, exercisable warrants | $ / shares | $ 0.27
0.29 Range |
Outstanding warrants, number | 4,615,525
Average weighted remaining contractual life in years, warrant | 2 years 1 month 28 days
Exercisable warrants, number | 4,615,525
Weighted average exercise price, exercisable warrants | $ / shares | $ 0.29
0.30 Range |
Outstanding warrants, number | 2,200,000
Average weighted remaining contractual life in years, warrant | 8 months 1 day
Exercisable warrants, number | 2,200,000
Weighted average exercise price, exercisable warrants | $ / shares | $ 0.30
0.32 Range |
Outstanding warrants, number | 250,000
Average weighted remaining contractual life in years, warrant | 1 year 9 months
Exercisable warrants, number | 250,000
Weighted average exercise price, exercisable warrants | $ / shares | $ 0.32
0.42 Range |
Outstanding warrants, number | 250,000
Average weighted remaining contractual life in years, warrant | 1 year 6 months
Exercisable warrants, number | 250,000
Weighted average exercise price, exercisable warrants | $ / shares | $ 0.42
0.50 Range |
Outstanding warrants, number | 250,000
Average weighted remaining contractual life in years, warrant | 1 year 3 months
Exercisable warrants, number | 250,000
Weighted average exercise price, exercisable warrants | $ / shares | $ 0.50
0.55 Range |
Outstanding warrants, number | 100,000
Average weighted remaining contractual life in years, warrant | 1 year 29 days
Exercisable warrants, number | 100,000
Weighted average exercise price, exercisable warrants | $ / shares | $ 0.55
0.69 Range |
Outstanding warrants, number | 999,998
Average weighted remaining contractual life in years, warrant | 2 months 19 days
Exercisable warrants, number | 999,998
Weighted average exercise price, exercisable warrants | $ / shares | $ 0.69
1.00 Range |
Outstanding warrants, number | 3,000,000
Average weighted remaining contractual life in years, warrant | 4 months 2 days
Exercisable warrants, number | 3,000,000
Weighted average exercise price, exercisable warrants | $ / shares | $ 1.00

X
- Definition Custom Element. + References No definition available. + Details
Name: | TOMZ_AverageWeightedRemainingContractualLifeInYearsWarrant
Namespace Prefix: | TOMZ_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition Custom Element. + References No definition available. + Details
Name: | TOMZ_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumberWarrants
Namespace Prefix: | TOMZ_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Definition Custom Element. + References No definition available. + Details
Name: | TOMZ_ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisableNumber
Namespace Prefix: | TOMZ_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Definition Custom Element. + References No definition available. + Details
Name: | TOMZ_ShareBasedCompensationArrangementByShareBasedPaymentAwardWarrantsExercisableWeightedAverageExercisePrice
Namespace Prefix: | TOMZ_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | instant

X
- Details
Name: | srt_RangeAxis=TOMZ_Range008Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=TOMZ_Range001Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=TOMZ_Range012Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=TOMZ_Range014Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=TOMZ_Range017Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=TOMZ_Range027Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=TOMZ_Range029Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=TOMZ_Range030Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=TOMZ_Range032Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=TOMZ_Range042Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=TOMZ_Range050Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=TOMZ_Range055Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=TOMZ_Range069Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=TOMZ_Range1Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |