<SEC-DOCUMENT>0001654954-22-009214.txt : 20220705
<SEC-HEADER>0001654954-22-009214.hdr.sgml : 20220705
<ACCEPTANCE-DATETIME>20220705083109
ACCESSION NUMBER:		0001654954-22-009214
CONFORMED SUBMISSION TYPE:	8-K
PUBLIC DOCUMENT COUNT:		17
CONFORMED PERIOD OF REPORT:	20220705
ITEM INFORMATION:		Regulation FD Disclosure
ITEM INFORMATION:		Financial Statements and Exhibits
FILED AS OF DATE:		20220705
DATE AS OF CHANGE:		20220705

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			TOMI Environmental Solutions, Inc.
		CENTRAL INDEX KEY:			0000314227
		STANDARD INDUSTRIAL CLASSIFICATION:	INDUSTRIAL ORGANIC CHEMICALS [2860]
		IRS NUMBER:				591947988
		STATE OF INCORPORATION:			FL
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		8-K
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-39574
		FILM NUMBER:		221063264

	BUSINESS ADDRESS:	
		STREET 1:		8430 SPIRES WAY
		CITY:			FREDERICK
		STATE:			MD
		ZIP:			21701
		BUSINESS PHONE:		8005251698

	MAIL ADDRESS:	
		STREET 1:		8430 SPIRES WAY
		CITY:			FREDERICK
		STATE:			MD
		ZIP:			21701

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	Ozone Man, Inc.
		DATE OF NAME CHANGE:	20071130

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	RPS GROUP INC
		DATE OF NAME CHANGE:	19940818

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	DAUPHIN INC
		DATE OF NAME CHANGE:	19940818
</SEC-HEADER>
<DOCUMENT>
<TYPE>8-K
<SEQUENCE>1
<FILENAME>tomz_8k.htm
<DESCRIPTION>FORM 8-K
<TEXT>
<XBRL>
<?xml version="1.0" encoding="utf-8"?><html xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:currency="http://xbrl.sec.gov/currency/2022" xmlns="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:dei="http://xbrl.sec.gov/dei/2022" xmlns:num="http://www.xbrl.org/dtr/type/numeric" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:us-roles="http://fasb.org/us-roles/2022" xmlns:country="http://xbrl.sec.gov/country/2022" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:srt-types="http://fasb.org/srt-types/2022" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:srt="http://fasb.org/srt/2022" xmlns:us-gaap="http://fasb.org/us-gaap/2022" xmlns:tomz="http://tomz.com/20220705"><head><title>tomz_8k.htm</title><!--Document Created by XBRLMaster--><meta http-equiv="Content-Type" content="text/html" /></head><body style="text-align:justify;font:10pt times new roman"><div style='display:none;text-align:justify;font:10pt times new roman;' id='XBRLDIV'><ix:header><ix:hidden><ix:nonNumeric name="dei:EntityCentralIndexKey" contextRef="From2022-07-05to2022-07-05">0000314227</ix:nonNumeric><ix:nonNumeric name="dei:AmendmentFlag" contextRef="From2022-07-05to2022-07-05" format="ixt:booleanfalse">false</ix:nonNumeric></ix:hidden><ix:references><link:schemaRef xlink:type='simple' xlink:href='tomz-20220705.xsd'></link:schemaRef></ix:references><ix:resources><xbrli:context id="From2022-07-05to2022-07-05"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000314227</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-07-05</xbrli:startDate><xbrli:endDate>2022-07-05</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="USD"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:unit id="Shares"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:unit id="USDPShares"><xbrli:divide><xbrli:unitNumerator><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unitNumerator><xbrli:unitDenominator><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unitDenominator></xbrli:divide></xbrli:unit></ix:resources></ix:header></div><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160; </p><table style="font-size:1px;width:100%"><tbody><tr><td style="BORDER-BOTTOM: 5px solid;"></td></tr><tr><td style="BORDER-BOTTOM: 2px solid;"></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>UNITED STATES</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>SECURITIES AND EXCHANGE COMMISSION</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Washington, D.C. 20549</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong><span style="font-size:18pt">FORM <ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:DocumentType">8-K</ix:nonNumeric></span></strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>CURRENT REPORT</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Pursuant to Section 13 or 15(d) of the</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Securities Exchange Act of 1934</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">Date of Report (Date of earliest event reported): <strong><ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:DocumentPeriodEndDate" format="ixt:datemonthdayyearen">July 5, 2022</ix:nonNumeric></strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><table style="border-spacing:0;font-size:10pt;text-align:left;margin-left:auto;margin-right:auto;width:70%" cellpadding="0"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong><span style="font-size:18pt"><ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:EntityRegistrantName">TOMI ENVIRONMENTAL SOLUTIONS, INC.</ix:nonNumeric></span></strong></p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">(Exact name of registrant as specified in its charter)</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160; &#160;</p><table style="border-spacing:0;font-size:10pt;text-align:justify;margin-left:auto;margin-right:auto;width:85%" cellpadding="0"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: 1px solid;width:30%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong><ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:EntityIncorporationStateCountryCode" format="ixt-sec:stateprovnameen">Florida</ix:nonNumeric></strong></p></td><td style="width:5%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:30%;vertical-align:bottom;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong><ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:EntityFileNumber">000-09908</ix:nonNumeric></strong></p></td><td style="width:5%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:30%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong><ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:EntityTaxIdentificationNumber">59-1947988</ix:nonNumeric></strong></p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">(State or other jurisdiction </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">of incorporation)</p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">(Commission </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">File Number)</p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">(I.R.S. Employer </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">Identification No.)</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font-size:10pt;text-align:justify;margin-left:auto;margin-right:auto;width:85%" cellpadding="0"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: 1px solid;width:100%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong><ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:EntityAddressAddressLine1">8430 SPIRES WAY</ix:nonNumeric></strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong><ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:EntityAddressCityOrTown">Frederick</ix:nonNumeric>, <ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:EntityAddressStateOrProvince" format="ixt-sec:stateprovnameen">Maryland</ix:nonNumeric> <ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:EntityAddressPostalZipCode">21701</ix:nonNumeric></strong></p></td></tr><tr style="height:15px"><td style="width:100%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">(Address of principal executive offices) (Zip Code)</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font-size:10pt;text-align:justify;margin-left:auto;margin-right:auto;width:85%" cellpadding="0"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: 1px solid;width:100%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>(<ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:CityAreaCode">800</ix:nonNumeric>) <ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:LocalPhoneNumber">525-1698</ix:nonNumeric></strong></p></td></tr><tr style="height:15px"><td style="width:100%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">(Registrant's telephone number, including area code)</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font-size:10pt;text-align:justify;margin-left:auto;margin-right:auto;width:85%" cellpadding="0"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: 1px solid;width:100%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Not Applicable</strong></p></td></tr><tr style="height:15px"><td style="width:100%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">(Former name or former address, if changed since last report)</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Check the appropriate box below if the Form 8-K filing is intended to simultaneously satisfy the filing obligation of the registrant under any of the following provisions (<em>see</em> General Instruction A.2. below):</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="width:4%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:WrittenCommunications" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric></p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Written communications pursuant to Rule 425 under the Securities Act (17 CFR 230.425)</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:SolicitingMaterial" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric></p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Soliciting material pursuant to Rule 14a-12 under the Exchange Act (17 CFR 240.14a-12)</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:PreCommencementTenderOffer" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric></p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act (17 CFR 240.14d-2(b))</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:PreCommencementIssuerTenderOffer" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric></p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act (17 CFR 240.13e-4(c))</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Securities registered pursuant to Section 12(b) of the Act:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font-size:10pt;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: 1px solid;width:30%;vertical-align:bottom;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Title of each class</strong></p></td><td style="width:5%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:30%;vertical-align:bottom;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Trading Symbol(s)</strong></p></td><td style="width:5%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:30%;vertical-align:bottom;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Name of each exchange on which registered</strong></p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:Security12bTitle">Common Stock, $0.01 par value per share</ix:nonNumeric></p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:TradingSymbol">TOMZ</ix:nonNumeric></p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:SecurityExchangeName" format="ixt-sec:exchnameen">Nasdaq</ix:nonNumeric> Capital Market</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Indicate by check mark whether the registrant is an emerging growth company as defined in Rule 405 of the Securities Act of 1933 (&#167;230.405 of this chapter) or Rule 12b-2 of the Securities Exchange Act of 1934 (&#167;240.12b-2 of this chapter).</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Emerging growth company&#160;&#160;&#160;&#160;&#160;<ix:nonNumeric contextRef="From2022-07-05to2022-07-05" name="dei:EntityEmergingGrowthCompany" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section&#160;13(a) of the Exchange Act.&#160;&#9744;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="font-size:1px;width:100%"><tbody><tr><td style="BORDER-BOTTOM: 2px solid;"></td></tr><tr><td style="BORDER-BOTTOM: 5px solid;"></td></tr></tbody></table><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="TEXT-INDENT: 0px;"></td></tr><tr style="height:15px"><td><p style='page-break-after: always'></p></td></tr><tr style="height:15px"><td>&#160;</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>Item 7.01. Regulation FD Disclosure.</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">On July 5, 2022, Tomi Environmental Solutions, Inc. (the &#8220;Company&#8221;) released a letter from the Company&#8217;s Chief Executive Officer, Dr. Halden Shane, (the &#8220;CEO Letter&#8221;) to the Company&#8217;s stockholders. A copy of the CEO Letter is attached hereto as Exhibit 99.1 and is incorporated herein in its entirety by reference.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>The information furnished in this Item 7.01, including the CEO Letter attached hereto as Exhibit 99.1, shall not be deemed &#8220;filed&#8221; for purposes of Section 18 of the Securities Exchange Act of 1934, as amended (the &#8220;Exchange Act&#8221;), or otherwise subject to the liabilities of that section, nor shall such information be deemed incorporated by reference in any filing under the Securities Act of 1933, as amended (the &#8220;Securities Act&#8221;), or the Exchange Act, except as expressly set forth by specific reference in such a filing.</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Cautionary Note Regarding Forward-Looking Statements.</em> Certain statements in the CEO Letter may be considered &#8220;forward-looking statements&#8221; within the meaning of Section 27A of the Securities Act and Section 21E of the Exchange Act. Forward-looking statements generally relate to future events or the Company&#8217;s future financial or operating performance and may be identified by words such as &#8220;may,&#8221; &#8220;should,&#8221; &#8220;expect,&#8221; &#8220;intend,&#8221; &#8220;will,&#8221; &#8220;estimate,&#8221; &#8220;anticipate,&#8221; &#8220;believe,&#8221; &#8220;predict,&#8221; or similar words. These forward-looking statements are based upon assumptions made by the Company as of the date hereof and are subject to risks, uncertainties, and other factors that could cause actual results to differ materially from those expressed or implied by such forward-looking statements. These forward-looking statements include, without limitation, statements relating to anticipated recognition of revenue in the remainder of 2022; financial performance and operating results; upcoming launch of new products; expected growth in sales and market demand; revenue opportunities of CES products in 2022; timing and process relating to research studies and testing; production capacity of our suppliers; the Company&#8217;s ability maintain is listing on Nasdaq; and anticipated cost saving and lead time in the manufacturing of our products. Forward-looking statements involve risks and uncertainties that may cause actual results to differ materially from those contained in the forward-looking statements. These factors include, but are not limited to, the impact of COVID-19 pandemic on our business and customers; our ability to maintain and manage growth and generate sales, our reliance on a single or a few products for a majority of revenues; the general business and economic conditions; and other risks as described in our SEC filings, including our Annual Report on Form 10-K for the fiscal year ended December 31, 2021 filed by us with the SEC and other periodic reports we filed with the SEC. The information provided in this document is based upon the facts and circumstances known at this time. Other unknown or unpredictable factors or underlying assumptions subsequently proving to be incorrect could cause actual results to differ materially from those in the forward-looking statements. Although we believe that the expectations reflected in the forward-looking statements are reasonable, we cannot guarantee future results, level of activity, performance, or achievements. You should not place undue reliance on these forward-looking statements. All information provided in the CEO Letter is as of today&#8217;s date, unless otherwise stated, and we undertake no duty to update such information, except as required under applicable law.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>Item 9.01 Financial Statements and Exhibits.</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">(d) Exhibits</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">See the Exhibit Index below, which is incorporated by reference herein.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><table style="border-spacing:0;font-size:10pt;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>Exhibit No.</strong></p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:90%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>Description</strong></p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><a href="tomz_ex991.htm">99.1</a></p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><a href="tomz_ex991.htm">CEO Letter, Dated July 5, 2022</a></p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">104</p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Cover Page Interactive Data File (embedded within the Inline XBRL document)</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:center;">2</td></tr><tr style="height:15px"><td><p style='page-break-after: always'></p></td></tr><tr style="height:15px"><td>&#160;</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>SIGNATURES</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Pursuant to the requirements of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned hereunto duly authorized.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font-size:10pt;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td colspan="2" style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>TOMI ENVIRONMENTAL SOLUTIONS, INC.</strong></p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="width:50%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:3%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:35%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:12%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Date: July 5, 2022</p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">By:</p></td><td style="BORDER-BOTTOM: 1px solid;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">/s/ Halden S. Shane</p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Name: Halden S. Shane</p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Title: Chief Executive Officer</p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:center;">3</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-99.1
<SEQUENCE>2
<FILENAME>tomz_ex991.htm
<DESCRIPTION>EX-99.1
<TEXT>
<html><head><title>tomz_ex991.htm</title><!--Document created using EDGARMaster--></head><body style="TEXT-ALIGN: justify; FONT: 10pt times new roman"><p style="MARGIN: 0px; text-align:right;"><strong>&nbsp; EXHIBIT 99.1</strong></p> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p> <p style="MARGIN: 0px; text-align:center;"><img src="tomz_ex991img1.jpg"></p> <p style="MARGIN: 0px 0px 0px 3in; TEXT-INDENT: 0.5in; text-align:right;"><strong>From the Desk of Dr. Halden Shane</strong></p> <p style="MARGIN: 0px; text-align:right;"><strong>CEO and Chairman of the Board</strong></p> <p style="MARGIN: 0px; text-align:center;"><strong>&nbsp;</strong></p> <p style="MARGIN: 0px; text-align:justify;">July 5, 2022</p> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p> <p style="MARGIN: 0px 0px 0px 0in; text-align:justify;">From: The Desk of the CEO</p> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p> <p style="MARGIN: 0px 0px 0px 0in; text-align:justify;">Dear Shareholders,</p> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p> <p style="MARGIN: 0px 0px 0px 0in; text-align:justify;">I hope you are all enjoying this beautiful weather as the summer season is now upon us.</p> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p> <p style="MARGIN: 0px 0px 0px 0in; text-align:justify;">We have seen increasing interest across our entire product line, but one of our most in demand products is our Custom Engineered System (CES), which was a driving force in our current open sales orders that created positive financial results in Q1. I wanted to take this opportunity to provide additional background and information about this key product and its potential to further enhance our financial performance in the future.&nbsp; </p> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p> <p style="MARGIN: 0px 0px 0px 0in; text-align:justify;">We believe the CES is the perfect solution for customers looking to build either a permanent or temporary&nbsp; decontamination system that is highly customized to meet their specific needs and requirements. We can customize and install a CES to accommodate whole facilities, individual rooms, pharmaceutical production areas, biosafety cabinets, anterooms, food processing areas, operating rooms, and so much more. Additionally, our systems can be built within transportation settings and installed in a variety of vehicles, including ambulances, fire engines and food trucks, to provide just a few examples.</p> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p> <p style="MARGIN: 0px 0px 0px 0in; text-align:justify;">Once installed, the system can efficiently and quickly spread our leading SteraMist solution which moves like a gas throughout the desired space and deliver a six log kill rate of harmful pathogens with a short dwell time, and all of this is achieved without any causing any harmful or toxic effect to the enviroment. The process is fully automated through a control panel that allows operators to easily deploy the SteraMist system in multiple locations in the building to achieve optimal results. </p> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p> <p style="MARGIN: 0px 0px 0px 0in; text-align:justify;">Our CES is trusted by some of the most well-known platinum customers. Click here for a video showcasing one of our CES in action in the Pfizer lab where workers are producing COVID-19 vaccines as posted by the New York Times. In addition to Pfizer, we have several other Fortune 500 customers that trust the safety of their products and employees with our CES and other SteraMist systems and continue to use and purchase our products due to its effectiveness and reliability.</p> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p> <p style="MARGIN: 0px 0px 0px 0in; text-align:justify;">TOMI&#8217;s first CES was installed back in 2016 at the Dana Farber Cancer Institute, and since then the product has become a significant driver of our revenue and a cornerstone of our business. Recently, we are seeing an increased pipeline of sales opportunities primarily due to the higher number of cleanrooms at customers in the pharmaceutical and life sciences industries, as well as the ongoing shift of preference from manual to automated disinfection solutions. To manage this increased demand, as we have &nbsp;previously discussed, we partnered with ARM Enertech Associates in the first quarter of 2022 to manufacture our CES in their Pennsylvania facility. Additionally, our current manufacturer, Planet Innovation, has expanded their business into the United States from Australia, providing easier access to their services. Overall, we believe we are well positioned to manage the demand for our CES, reduce the lead time and costs for manufacturing the CES systems, and ship to our customers in a timely manner.</p> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p> <p style="MARGIN: 0px 0px 0px 0in; text-align:justify;">Our Custom Engineered System enabled us to secure more bookings, win more bids and thus compete more effectively in our market. CES eliminates human error, provides targeted disinfection unmatched by competing solutions and help reduce labor cost and down time for our customers. We are thrilled with the traction that our CES has gained over the past few years and look forward to its continued success as customers around the world recognize the effectiveness of our products.&nbsp; We believe that our CES and the entire TOMI product line can set the industry standard for disinfection and decontamination solution.</p> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p> <p style="MARGIN: 0px 0px 0px 0in; text-align:justify;">Like many companies, we are experiencing supply chain constraints with certain components and vendors, while shortages and long lead times have hampered our ability to convert our record sales orders to revenue in the short term and has hindered the timeline for launching of new products.&nbsp; However, we have adjusted our strategies in response to these headwinds and expect our operations to return to a more normalized cadence during the second half of the year, which we believe should enable us to meet our year-end revenue projection of $12 million to $14 million for 2022. </p> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p> <p style="MARGIN: 0px 0px 0px 0in; text-align:justify;">Thank you for your continued support in TOMI Environmental Solutions. &nbsp;Hope you have had a safe Fourth of July and that this will be a memorable summer.</p> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p> <p style="MARGIN: 0px 0px 0px 0in; text-align:justify;">Best,</p> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p> <p style="MARGIN: 0px 0px 0px 0in; text-align:justify;">Dr. Halden Shane</p> <p style="MARGIN: 0px 0px 0px 0in; text-align:justify;">&nbsp;</p> <p style="MARGIN: 0px; text-align:center;"><img src="tomz_ex991img2.jpg"></p> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p><body>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>3
<FILENAME>tomz-20220705.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii" standalone="yes"?>
<!--XBRL Document Created with XBRLMaster-->
<!--Version: 2.3.08-->
<!--Based on XBRL 2.1-->
<!--Date of creation: 07/05/2022-->
<!--Software architectural design and coding: A'c Dharmapremananda Avt.-->
<!--Copyright (c) 2022 I-NET Business Solutions, Inc. All Rights Reserved.-->
<schema xmlns:xl="http://www.xbrl.org/2003/XLink" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:currency="http://xbrl.sec.gov/currency/2022" xmlns:us-gaap-att="http://fasb.org/us-gaap/attributes" xmlns:sic="http://xbrl.sec.gov/sic/2022" xmlns:exch="http://xbrl.sec.gov/exch/2022" xmlns:invest="http://xbrl.sec.gov/invest/2013-01-31" xmlns:negated="http://www.xbrl.org/2009/role/negated" xmlns:naics="http://xbrl.sec.gov/naics/2022" xmlns:us-types="http://fasb.org/us-types/2022" xmlns:stpr="http://xbrl.sec.gov/stpr/2022" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:country="http://xbrl.sec.gov/country/2022" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:srt-types="http://fasb.org/srt-types/2022" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:srt-roles="http://fasb.org/srt-roles/2022" xmlns:dei="http://xbrl.sec.gov/dei/2022" xmlns:num="http://www.xbrl.org/dtr/type/numeric" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:srt="http://fasb.org/srt/2022" xmlns:us-gaap="http://fasb.org/us-gaap/2022" xmlns:tomz="http://tomz.com/20220705" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://tomz.com/20220705">
 <annotation>
  <appinfo>
   <link:roleType roleURI="http://tomz.com/role/Cover" id="Cover">
    <link:definition>000001 - Document - Cover</link:definition>
    <link:usedOn>link:presentationLink</link:usedOn>
    <link:usedOn>link:calculationLink</link:usedOn>
    <link:usedOn>link:definitionLink</link:usedOn>
   </link:roleType>
   <link:linkbaseRef xlink:type="simple" xlink:href="tomz-20220705_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
   <link:linkbaseRef xlink:type="simple" xlink:href="tomz-20220705_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
   <link:linkbaseRef xlink:type="simple" xlink:href="tomz-20220705_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
   <link:linkbaseRef xlink:type="simple" xlink:href="tomz-20220705_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
  </appinfo>
 </annotation>
 <import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" />
 <import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" />
 <import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd" />
 <import namespace="http://xbrl.sec.gov/country/2022" schemaLocation="https://xbrl.sec.gov/country/2022/country-2022.xsd" />
 <import namespace="http://xbrl.sec.gov/currency/2022" schemaLocation="https://xbrl.sec.gov/currency/2022/currency-2022.xsd" />
 <import namespace="http://xbrl.sec.gov/dei/2022" schemaLocation="https://xbrl.sec.gov/dei/2022/dei-2022.xsd" />
 <import namespace="http://www.xbrl.org/dtr/type/non-numeric" schemaLocation="http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd" />
 <import namespace="http://www.xbrl.org/dtr/type/numeric" schemaLocation="http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd" />
 <import namespace="http://xbrl.sec.gov/exch/2022" schemaLocation="https://xbrl.sec.gov/exch/2022/exch-2022.xsd" />
 <import namespace="http://www.xbrl.org/2009/arcrole/fact-explanatoryFact" schemaLocation="http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd" />
 <import namespace="http://www.xbrl.org/2009/role/negated" schemaLocation="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd" />
 <import namespace="http://www.xbrl.org/2009/role/net" schemaLocation="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd" />
 <import namespace="http://xbrl.sec.gov/naics/2022" schemaLocation="https://xbrl.sec.gov/naics/2022/naics-2022.xsd" />
 <import namespace="http://xbrl.sec.gov/sic/2022" schemaLocation="https://xbrl.sec.gov/sic/2022/sic-2022.xsd" />
 <import namespace="http://fasb.org/srt-roles/2022" schemaLocation="https://xbrl.fasb.org/srt/2022/elts/srt-roles-2022.xsd" />
 <import namespace="http://fasb.org/srt-types/2022" schemaLocation="https://xbrl.fasb.org/srt/2022/elts/srt-types-2022.xsd" />
 <import namespace="http://www.xbrl.org/dtr/type/2020-01-21" schemaLocation="https://www.xbrl.org/dtr/type/2020-01-21/types.xsd" />
 <import namespace="http://xbrl.sec.gov/stpr/2022" schemaLocation="https://xbrl.sec.gov/stpr/2022/stpr-2022.xsd" />
 <import namespace="http://fasb.org/us-roles/2022" schemaLocation="https://xbrl.fasb.org/us-gaap/2022/elts/us-roles-2022.xsd" />
 <import namespace="http://fasb.org/us-types/2022" schemaLocation="https://xbrl.fasb.org/us-gaap/2022/elts/us-types-2022.xsd" />
 <import namespace="http://fasb.org/srt/2022" schemaLocation="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd" />
 <import namespace="http://fasb.org/us-gaap/2022" schemaLocation="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd" />
</schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>4
<FILENAME>tomz-20220705_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii" standalone="yes"?>
<!--XBRL Document Created with XBRLMaster-->
<!--Version: 2.3.08-->
<!--Based on XBRL 2.1-->
<!--Date of creation: 07/05/2022-->
<!--Software architectural design and coding: A'c Dharmapremananda Avt.-->
<!--Copyright (c) 2022 I-NET Business Solutions, Inc. All Rights Reserved.-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" roleURI="http://www.xbrl.org/2009/role/negatedLabel" />
  <link:roleRef xlink:type="simple" roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" />
  <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" />
  <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" />
  <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" />
  <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" />
  <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" roleURI="http://www.xbrl.org/2009/role/netLabel" />
  <link:labelLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CoverAbstract" xlink:to="dei_CoverAbstract_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CoverAbstract_lbl" xml:lang="en-US">Cover [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityRegistrantName_lbl" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCentralIndexKey_lbl" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentType" xlink:label="dei_DocumentType" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentType_lbl" xml:lang="en-US">Document Type</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AmendmentFlag_lbl" xml:lang="en-US">Amendment Flag</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityEmergingGrowthCompany_lbl" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentPeriodEndDate_lbl" xml:lang="en-US">Document Period End Date</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityIncorporationStateCountryCode_lbl" xml:lang="en-US">Entity Incorporation State Country Code</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityTaxIdentificationNumber_lbl" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_WrittenCommunications" xlink:label="dei_WrittenCommunications" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_WrittenCommunications" xlink:to="dei_WrittenCommunications_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_WrittenCommunications_lbl" xml:lang="en-US">Written Communications</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SolicitingMaterial" xlink:label="dei_SolicitingMaterial" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SolicitingMaterial" xlink:to="dei_SolicitingMaterial_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SolicitingMaterial_lbl" xml:lang="en-US">Soliciting Material</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_PreCommencementTenderOffer" xlink:label="dei_PreCommencementTenderOffer" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_PreCommencementTenderOffer" xlink:to="dei_PreCommencementTenderOffer_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_PreCommencementTenderOffer_lbl" xml:lang="en-US">Pre Commencement Tender Offer</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="dei_PreCommencementIssuerTenderOffer" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_PreCommencementIssuerTenderOffer" xlink:to="dei_PreCommencementIssuerTenderOffer_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_PreCommencementIssuerTenderOffer_lbl" xml:lang="en-US">Pre Commencement Issuer Tender Offer</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityFileNumber_lbl" xml:lang="en-US">Entity File Number</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine1_lbl" xml:lang="en-US">Entity Address Address Line 1</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressCityOrTown_lbl" xml:lang="en-US">Entity Address City Or Town</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressStateOrProvince_lbl" xml:lang="en-US">Entity Address State Or Province</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressPostalZipCode_lbl" xml:lang="en-US">Entity Address Postal Zip Code</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CityAreaCode_lbl" xml:lang="en-US">City Area Code</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_LocalPhoneNumber_lbl" xml:lang="en-US">Local Phone Number</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12bTitle" xlink:to="dei_Security12bTitle_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Security12bTitle_lbl" xml:lang="en-US">Security 12b Title</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_TradingSymbol_lbl" xml:lang="en-US">Trading Symbol</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityExchangeName" xlink:to="dei_SecurityExchangeName_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SecurityExchangeName_lbl" xml:lang="en-US">Security Exchange Name</link:label>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>5
<FILENAME>tomz-20220705_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii" standalone="yes"?>
<!--XBRL Document Created with XBRLMaster-->
<!--Version: 2.3.08-->
<!--Based on XBRL 2.1-->
<!--Date of creation: 07/05/2022-->
<!--Software architectural design and coding: A'c Dharmapremananda Avt.-->
<!--Copyright (c) 2022 I-NET Business Solutions, Inc. All Rights Reserved.-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef  roleURI="http://tomz.com/role/Cover" xlink:href="tomz-20220705.xsd#Cover" xlink:type="simple" />
  <link:calculationLink xlink:type="extended" xlink:role="http://tomz.com/role/Cover" xlink:title="00000001 - Document - Document and Entity Information" />
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>6
<FILENAME>tomz-20220705_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii" standalone="yes"?>
<!--XBRL Document Created with XBRLMaster-->
<!--Version: 2.3.08-->
<!--Based on XBRL 2.1-->
<!--Date of creation: 07/05/2022-->
<!--Software architectural design and coding: A'c Dharmapremananda Avt.-->
<!--Copyright (c) 2022 I-NET Business Solutions, Inc. All Rights Reserved.-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://tomz.com/role/Cover" xlink:href="tomz-20220705.xsd#Cover" xlink:type="simple" />
  <link:presentationLink xlink:type="extended" xlink:role="http://tomz.com/role/Cover" xlink:title="00000001 - Document - Cover Page Information">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CoverAbstract" xlink:label="loc_deiCoverAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityRegistrantName" xlink:label="loc_deiEntityRegistrantName" />
    <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityRegistrantName" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCentralIndexKey" xlink:label="loc_deiEntityCentralIndexKey" />
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCentralIndexKey" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentType" xlink:label="loc_deiDocumentType" />
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentType" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentFlag" xlink:label="loc_deiAmendmentFlag" />
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAmendmentFlag" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityEmergingGrowthCompany" xlink:label="loc_deiEntityEmergingGrowthCompany" />
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityEmergingGrowthCompany" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_deiDocumentPeriodEndDate" />
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentPeriodEndDate" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="loc_deiEntityIncorporationStateCountryCode" />
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityIncorporationStateCountryCode" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityTaxIdentificationNumber" xlink:label="loc_deiEntityTaxIdentificationNumber" />
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityTaxIdentificationNumber" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_WrittenCommunications" xlink:label="loc_deiWrittenCommunications" />
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiWrittenCommunications" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SolicitingMaterial" xlink:label="loc_deiSolicitingMaterial" />
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSolicitingMaterial" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_PreCommencementTenderOffer" xlink:label="loc_deiPreCommencementTenderOffer" />
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiPreCommencementTenderOffer" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="loc_deiPreCommencementIssuerTenderOffer" />
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiPreCommencementIssuerTenderOffer" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFileNumber" xlink:label="loc_deiEntityFileNumber" />
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityFileNumber" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine1" xlink:label="loc_deiEntityAddressAddressLine1" />
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine1" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressCityOrTown" xlink:label="loc_deiEntityAddressCityOrTown" />
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressCityOrTown" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressStateOrProvince" xlink:label="loc_deiEntityAddressStateOrProvince" />
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressStateOrProvince" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressPostalZipCode" xlink:label="loc_deiEntityAddressPostalZipCode" />
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressPostalZipCode" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CityAreaCode" xlink:label="loc_deiCityAreaCode" />
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCityAreaCode" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LocalPhoneNumber" xlink:label="loc_deiLocalPhoneNumber" />
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiLocalPhoneNumber" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Security12bTitle" xlink:label="loc_deiSecurity12bTitle" />
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurity12bTitle" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_TradingSymbol" xlink:label="loc_deiTradingSymbol" />
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiTradingSymbol" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityExchangeName" xlink:label="loc_deiSecurityExchangeName" />
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurityExchangeName" xlink:type="arc" />
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>7
<FILENAME>tomz-20220705_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii" standalone="yes"?>
<!--XBRL Document Created with XBRLMaster-->
<!--Version: 2.3.08-->
<!--Based on XBRL 2.1-->
<!--Date of creation: 07/05/2022-->
<!--Software architectural design and coding: A'c Dharmapremananda Avt.-->
<!--Copyright (c) 2022 I-NET Business Solutions, Inc. All Rights Reserved.-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef  roleURI="http://tomz.com/role/Cover" xlink:href="tomz-20220705.xsd#Cover" xlink:type="simple" />
  <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" />
  <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" />
  <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" />
  <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" arcroleURI="http://xbrl.org/int/dim/arcrole/all" />
  <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#notAll" arcroleURI="http://xbrl.org/int/dim/arcrole/notAll" />
  <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tomz.com/role/Cover" xlink:title="00000001 - Document - Cover Page Information">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CoverAbstract" xlink:label="loc_deiCover" />
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>8
<FILENAME>tomz_ex991img1.jpg
<TEXT>
begin 644 tomz_ex991img1.jpg
M_]C_X  02D9)1@ ! 0$ 8 !@  #_VP!#  4$! 0$ P4$! 0&!04&" T(" <'
M"! +# D-$Q 4$Q(0$A(4%QT9%!8<%A(2&B,:'!X?(2$A%!DD)R0@)AT@(2#_
MVP!# 04&!@@'" \(" \@%1(5(" @(" @(" @(" @(" @(" @(" @(" @(" @
M(" @(" @(" @(" @(" @(" @(" @("#_P  1" "1 S,# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#[+HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** &TM5YI8[>%YIF$:(I9F8X  Y))["N>\[7M:LE
MNM-NHM)LYXTD@=X?/G(/))&[8H(Q@?,<'L>!C*?+HE=]D)NQU-%<G_8?C#_H
M=A_X+X_\:3^Q/&'_ $.W_E.C_P :R]O/^1_A_F1S2_E?X'6T5R?]B>,/^AV'
M_@OC_P :/[#\8?\ 0[#_ ,%\?^-'MY_R/\/\PYI=G^'^9UE%<G_8GC#_ *'8
M?^"^/_&D_L3QA_T.W_E.C_QH]O/^1_A_F'-+^5_A_F=;17)_V'XP_P"AV'_@
MOC_QH_L3QA_T.P_\%\?^-'MY_P C_#_,.:79_A_F=917)?V)XP_Z';_RG1_X
MTO\ 8?C#_H=A_P""^/\ QH]O/^1_A_F'-+^5_@=917)_V)XP_P"AV'_@OC_Q
MI/[$\8_]#M_Y3H_\:/;S_D?X?YAS2_E?X?YG6T5R?]A^,/\ H=A_X+X_\:/[
M$\8?]#L/_!?'_C1[>?\ (_P_S#FEV?X?YG645R?]B>,/^AV'_@OC_P :/[$\
M8?\ 0[#_ ,%\?^-'MY_R/\/\PYI=G^'^9UE%<G_8?C#_ *'8?^"^/_&C^Q/&
M'_0[#_P7Q_XT>WG_ "/\/\PYI=G^'^9UE%<G_8GC#_H=A_X+X_\ &C^P_&'_
M $.P_P#!?'_C1[>?\C_#_,.:79_A_F=917)?V)XP_P"AV_\ *='_ (TO]B>,
M/^AV'_@OC_QH]O/^1_A_F'-+^5_A_F=917)_V'XP_P"AV'_@OC_QI/[$\8?]
M#M_Y3H_\:/;S_D?X?YAS2_E?X'6T5R?]B>,/^AV'_@OC_P :/[#\8?\ 0[#_
M ,%\?^-'MY_R/\/\PYI=G^'^9UE%<G_8GC#_ *'8?^"^/_&D_L3QA_T.W_E.
MC_QH]O/^1_A_F'-+^5_A_F=;17)_V'XP_P"AV'_@OC_QH_L3QA_T.P_\%\?^
M-'MY_P C_#_,.:79_A_F=917)?V)XP_Z';_RG1_XTO\ 8?C#_H=A_P""^/\
MQH]O/^1_A_F'-+^5_@=917)?V)XP_P"AV_\ *='_ (T?V)XP_P"AV_\ *='_
M (T>WG_(_P /\PYI?RO\#K:*Y/\ L/QA_P!#L/\ P7Q_XTG]B>,/^AV_\IT?
M^-'MY_R/\/\ ,.:7\K_ ZVBN3_L3QA_T.P_\%\?^-']A^,/^AV'_ (+X_P#&
MCV\_Y'^'^8<TNS_#_,ZRBN3_ +$\8?\ 0[#_ ,%\?^-']B>,/^AV'_@OC_QH
M]O/^1_A_F'-+L_P_S.LHKD_[#\8?]#L/_!?'_C1_8GC#_H=A_P""^/\ QH]O
M/^1_A_F'-+L_P_S.LHKDO[$\8?\ 0[?^4Z/_ !I?[#\8?]#L/_!?'_C1[>?\
MC_#_ ##FE_*_P.LHKD_[$\8?]#L/_!?'_C2?V'XQS_R.W_E.C_QH]O/^1_A_
MF'-+L_P_S.MHKD_[#\8_]#L/_!='_C1_8?C'_H=A_P""Z/\ QH]O/^1_A_F'
M-+^5_A_F=917)_V'XQ_Z'8?^"Z/_ !H_L/QA_P!#L/\ P7Q_XT>WG_(_P_S#
MFE_*_P /\SK**Y+^P_&/_0[C_P %T?\ C1_8?C+_ *'<?^"Z/_&CV\_Y'^'^
M8<TOY7^'^9UM%<E_8?C+_H=Q_P""Z/\ QH_L/QE_T.X_\%T?^-'MY_R/\/\
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
M=Q;SZ5%%*8C>"0S!W*\83C&,U[3IMW<7MB+BZL9+"7S)$,,K L KLH;(XPP
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
M2?RR:YSPSX\\>7&JRIXY^&$OA325LY+W^TO[5BNXXE0 E90H!5L<\9[\<$@
M]0HKP-OC]X@_L ^-U^%.IM\/A)_R&?MT8N##NV^>+7&[9G_:Z<YK7UCX[^']
M$^,'A_P1>6JC3==TZ&^MM;^T8C!E9Q$K(5X5MH^;=U8<=Z /9:*\I^&/QCTO
MXG^*_%FDZ-IK1:?H$D20:@9]XOE<R#>$VC8N8SCDY!'3I7JU !1110 E9.MW
M*V^G.O!DE!C4'T/4_E^N*UJXS7+K[3J/E*?W<.5'NW?_  _"N/%5?9TWW>AG
M.5HF4>E)2GI25\Z<H>M-IWK3: "D8[5)I:IZA.(;=C0@.4\27N<QJW)XKEL8
MXJWJ$YN+UFSD+52O(Q]6\E373\SS<7.\N3L%(>M+2'K7E'$(>M-IQZTVFB@K
MNOA./^*]E..?[/EY_P"VD5<+7=?"?_D>Y?\ KPE_]&15ZF5_[S'U.C"_QHGN
M]%%%?HI]&%%%% !1110 4444 %%%% !1110 4444 8WB'_D&1?\ 7Y:_^E$=
M:XZ5D>(?^09%_P!?EK_Z41UKCI6*_B2]$2MQ:***V*"BBB@#%\6?\B1KW_8/
MN/\ T6U?FW^S?_R<CX._Z^)?_1$E?I)XL_Y$C7O^P?<?^BVK\V_V;_\ DY'P
M=_U\2_\ HB2@#]"?B)_R ;7_ *^%_P#0'JAX E@@T'4IU5&GCE9W P&*A 5S
MWQG=C\?>NKUW2UUC2)K1L"0C=&Q_A<=#G!QZ''8FO(=-UBZ\-:K<B6V\Y&#P
M7%N7*@D''49&0<\\\$^N:^4QM\-CHUY_#)6OV9R5'R5%)[%3QWJ,UY%(U]*\
M]PWS1HVY8[=2,_*.Y8 >HVG/S$Y7H+BQDL?V;8X9F1F:**<%,D8DN%D7KWPP
MS[YJ![[P-=Z@VL:M<7$BPA?)T]X22_EQ[0), JQ)&0-P'3/4@<UX[\<S^*$2
MQAM_LNGP2&158AGD;D!F/;Y3]T>IY/&)56$(SE*:DY)I6U>O5F3E&/-*]VU8
MZ/X&?\?'B#_MW_\ :M?%W@'_ ).PT7_L:!_Z4&OOSX:>$Y/#?AYKF[XO]0V2
MRKA@8E"_)&0>XRQ/ Y8CG -? ?@+_DZ_1/\ L:!_Z4&OH,#"5/#QC+<Z:,7&
MFDS5W?\ "GOVQNOV>TT[7>>VVTG/_P 9EK1_:3U6Z\>?M,3>']-/G&S-OHMJ
MO8R$Y8?7S)&'X5T'[9_AO^S?BAH_B:)-L6L6/EN?[TL+8)_[X>,?A7(?LX:-
M=>-OVD],U/4W>\:S>;6;N5^69UY5S[^:Z&NTW(/VF=+M=#^-;:+9+MM=/TJQ
MM8AC&$2!5'Z"OIKX\?\ )E-M_P!>>E_^A15\Y_M:?\G%ZG_UYVO_ *+%?1GQ
MX_Y,IMO^O/2__0HJ /-/V(/^1J\8_P#7G;_^AM7V[7Q%^Q!_R-7C'_KSM_\
MT-J^W: ,6Y_Y'?2_^P?=_P#HRVK:K%N?^1WTO_L'W?\ Z,MJVJ /%OCY\&6^
M+7A2S;3;J*VU_26>2S>;(CE5P-\3$<C.U2#S@CW)KX#\6?#/Q]X)E=?$_A/4
M=/B0X^T&$O ?I*N4/X&OL7]I;X]:EX#G@\%^#+AK37Y-EU=7IC#"WBSE44,"
M&9L<\$!>.IXYGPE^VE9_8$M?'WA2<W"+M>ZTAE82\?\ /*1EV^_SGZ=J /G3
MPE\9OB7X(EA_L/Q;?_98CQ9W4AN+<CTV/D '_9P?>ONKX$?&NU^+WA^Z^UVL
M>G^(--V_;+:+/ENK9VR1YR=IP0022#]03\<?'CXB_#WXBZOI>H>!_",NB31+
M)]MN9H8H'NB=NT%(V8';AOF)R=V.U>H?L3Z%?-XH\4>)O+9;"*S2P#G[KR.X
M? ]2 @SZ;AZT ?2/Q]_Y-Z\:_P#8/;_T(5^=7PI_Y+?X#_[&"P_]*4K]%?C[
M_P F]>-?^P>W_H0K\ZOA3_R6_P !_P#8P6'_ *4I0!^L5?GW^V=_R7/3_P#L
M!P?^CIZ_02OS[_;._P"2YZ?_ -@.#_T=/0!XMX=O/'MM8RKX5N]>AM3)F0:9
M),J%\#KY?&<8Z^U:_P#:WQH_Z"7C7_O]=_XUZ5\"/V@='^$7A'5-$U+P_>:G
M)>WOVI9+>5$"CRU7!SW^6O6O^&W?"O\ T)&J_P#@1'0!U_@:76)OV']0E\02
M7LNIMH>K^<U\SF8_/<[=Q?YONXQGMBOSWT^Z-AJEI?!-YMYDE"GC=M8''Z5^
M@VD_&G2_C%\&_B=)INB76EC2=%G5Q<2*_F>9;S8QM]-A_.OS^T>WBN]>T^TG
M7,4UQ'&X!QE2P!H ^J;G]MW7&@=;+P#8Q38^5Y;YY%'U 12?S%?.&IWWB;XE
M_$&XOY+>34]?UNYXAMX^7<\!57L  ![ <GO7TI\?_P!F[0?#'@4>+?AW87$*
M::2VI6KS/,6A/_+5=Q)&P]1Z$GC::\<^ WQ/7X6?$J#4KZ-7T?4%%GJ!"Y>.
M,D$2*>N5/) ZC(ZXP ???PC\%O\ #GX1:'X9OI$-U:0M-=OD;1*[&1QGN%+%
M0?117YV?&+QP_P 0_BWKGB19"UDTWV>R![6\?RI],XW'W8U]P?M)_$*'PK\"
M[MM,NU>\\1*+"SDB8,#'(N9) 1V\O(!'=UKX!\'^#/$GCO7SH/A32VU'4?):
M;RA(D8"+C+%G95 Y'4]2* /IC6OAGX;M?V++73TUC33XELB/$4J"YC\PR,O[
MR+&<Y$.!CNT8KQ'X$^._^%>_&31=:GG\K3KE_L-^2<#R)" 6/LK;7_X!6O\
M\,N?'3_H1?\ RIV?_P >KS;Q-X5UWP;XBN?#OB?3VT_5+7;YL#.K[0RAE(92
M5(((Y!- 'Z\U\F?LC@-XU^+ZL 0;^V!![_O+NO4OV=O'G_">?!;2;F:;S-3T
ML?V;>9.6+Q@;7/KN0H2?4GTKR[]D7_D=_B__ -A"V_\ 1EW0!EZS]H_9<^.;
M:[96L\OPZ\59\ZV@&?LL@R=JC@90DE<]49AR5S6[\#?#6K?%#XBZA\??'$)"
M-(T.@VC\I"BY7> >R#*@]V+MUP:]^\;^"-"^(/A"Z\+^(K=I+2X*MNC(62)U
M.5=#@X8?R)'0UNZ;IUCI&E6NDZ;;):V=I$L$$,8PL:*,*H^@% 'RWK/_ "D@
M\.?]@]__ $AGKT;]JC_DVGQ+_P!=+3_TJBKSG6?^4D'AS_L'O_Z0SUZ-^U1_
MR;3XE_ZZ6G_I5%0!TWP+_P"3?_!/_8+B_E7 ?%+]G5O%/BW_ (3SP#XBD\)^
M*_O2/'N2*=^F_<GS1L1U(W XZ9))[KX(S10_L]^#)I6"1II4;,QZ  <FCX??
M&KX?_$JYNK/P[JY34()706=V!%-,BDXEC4GYE(&>.1_$!0!XDWB3]KGX<H&U
MGP_:>-]-CX,L$2SN5'IY.V3\60UZK\(?CQX=^*TL^EBTFT3Q):)OGTVX8-N
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
MO3$B,P8N#@EER#G.%P:ZKM28!Z\UE.%W>+LR6KZK1G*?\)HW_0K:_P#^ ?\
M]E1_PFC?]"MK_P#X!_\ V5=9M']VC:/[M9<E7^;\!6EW.3_X31O^A6U__P
M_P#[*C_A-&_Z%;7_ /P#_P#LJZS:/[M&T?W:.2K_ #?@%I=SD_\ A-&_Z%;7
M_P#P#_\ LJ/^$T;_ *%;7_\ P#_^RKK-H_NT;1_=HY*O\WX!:7<Y/_A-&_Z%
M;7__  #_ /LJ/^$T;_H5M?\ _ /_ .RKK-H_NT;1_=HY*O\ -^ 6EW.3_P"$
MT;_H5M?_ / /_P"RH_X31O\ H5M?_P# /_[*NLVC^[1M']VCDJ_S?@%I=SD_
M^$T;_H5M?_\  /\ ^RH_X31O^A6U_P#\ _\ [*NLVC^[1M']VCDJ_P WX!:7
M<Y/_ (31O^A6U_\ \ __ +*C_A-&_P"A6U__ , __LJZS:/[M&T?W:.2K_-^
M 6EW.3_X31O^A6U__P  _P#[*C_A-&_Z%;7_ /P#_P#LJZS:/[M&T?W:.2K_
M #?@%I=SD_\ A-&_Z%;7_P#P#_\ LJ/^$T;_ *%;7_\ P#_^RKK-H_NT;1_=
MHY*O\WX!:7<Y/_A-&_Z%;7__  #_ /LJ/^$T;_H5M?\ _ /_ .RKK-H_NT;1
M_=HY*O\ -^ 6EW.3_P"$T;_H5M?_ / /_P"RH_X31O\ H5M?_P# /_[*NLVC
M^[1M']VCDJ_S?@%I=SD_^$T;_H5M?_\  /\ ^RH_X31O^A6U_P#\ _\ [*NL
MVC^[1M']VCDJ_P WX!:7<Y/_ (31O^A6U_\ \ __ +*C_A-&_P"A6U__ , _
M_LJZS:/[M&T?W:.2K_-^ 6EW.3_X31O^A6U__P  _P#[*C_A-&_Z%;7_ /P#
M_P#LJZS:/[M&T?W:.2K_ #?@%I=SD_\ A-&_Z%;7_P#P#_\ LJ/^$T;_ *%;
M7_\ P#_^RKK-H_NT;1_=HY*O\WX!:7<Y/_A-&_Z%;7__  #_ /LJ/^$T;_H5
MM?\ _ /_ .RKK-H_NT;1_=HY*O\ -^ 6EW.3_P"$T;_H5M?_ / /_P"RH_X3
M1O\ H5M?_P# /_[*NLVC^[1M']VCDJ_S?@%I=SD_^$T;_H5M?_\  /\ ^RH_
MX31O^A6U_P#\ _\ [*NLVC^[1M']VCDJ_P WX!:7<Y/_ (31O^A6U_\ \ __
M +*C_A-&_P"A6U__ , __LJZS:/[M&T?W:.2K_-^ 6EW.3_X31O^A6U__P
M_P#[*C_A-&_Z%;7_ /P#_P#LJZS:/[M&T?W:.2K_ #?@%I=SD_\ A-&_Z%;7
M_P#P#_\ LJ/^$T;_ *%;7_\ P#_^RKK-H_NT;1_=HY*O\WX!:7<Y/_A-&_Z%
M;7__  #_ /LJ/^$T;_H5M?\ _ /_ .RKK-H_NT;1_=HY*O\ -^ 6EW.3_P"$
MT;_H5M?_ / /_P"RI/\ A-6S_P BKK__ (!__95UNT?W:-H_NT<E7^;\ M+N
M<E_PFI_Z%;7_ /P#_P#LJ/\ A-3_ -"MK_\ X!__ &5=;M']VC:/[M')5_F_
M +2[G)?\)J?^A6U__P  _P#[*D_X35O^A5\0?^ ?_P!E77;1_=HVC^[1R5?Y
MOP"TNYR/_":M_P!"KX@_\ __ +*C_A-6_P"A5\0?^ ?_ -E77;1_=HVC^[1R
M5?YOP"TNYR/_  FK?]"KX@_\ _\ [*C_ (39O^A5\0?^ ?\ ]E77;1_=HVC^
M[1R5?YOP"TNYR/\ PFS?]"KX@_\  /\ ^RH_X39O^A5\0?\ @'_]E77;1_=H
MVC^[1R5?YOP"TNYR/_";-_T*OB#_ , __LJ/^$V/_0J^(/\ P#_^RKKMH_NT
M;1_=HY*O\WX!:7<Y'_A-C_T*OB#_ , __LJ/^$V/_0J^(/\ P#_^RKKMH_NT
M;1_=HY*O\WX!:7<Y#_A-V_Z%/Q#_ . ?_P!E1_PF[?\ 0I^(?_ /_P"RKL-H
MHP*?LZG\_P""%:7<X_\ X3=O^A3\0_\ @'_]E1_PF[?]"GXA_P# /_[*NPP*
M-HH]G4_G_!!:7<X__A.&_P"A3\0_^ 7_ -E1_P )N?\ H4_$/_@'_P#95U^T
M>E&T>E')4_G_  ':7<X__A.6_P"A2\1?^ 7_ -E1_P )RW_0I>(O_ +_ .RK
ML=HHVBCV=3^?\$%I=SC_ /A.&_Z%'Q#_ . 0_P#BJ3_A.6_Z%+Q%_P" 7_V5
M=AM'I1M'I1R5/Y_P"TNYQ_\ PG#?]"CXB_\  '_[*N>U#7[V\OI)_P#A%]="
MG 56LR< ?C^/XUZC@>@HQ["LJN'G5CRRG^"(E!RT;/)/[5O3_P ROKO_ (!'
M_&D_M6]S_P BOKW_ (!'_&O7=M&VN7^SE_,_N1'L/,\B_M6]Q_R*^O?^ 1_Q
MH_M6]_Z%;7O_  "/^->N[:-M']G+^9_<@]AYGD/]J7V3_P 4KKW_ (!'_&JU
MWJ&J2PE8O"VN ^]FW^->S8HQ3_LY?SO\"O8^9\US:3XAFN'E;P[JG/3_ $5_
M\*A.BZ_G'_".:I_X"/\ X5],[1V%&!Z"N6KDM.K+FE)W.>>#C-\TF?,C:+XA
MQG_A'-5_\!'_ ,*3^Q/$/_0MZK_X"O\ X5].[5]*-JUG_8-'^9D?4(=SYA_L
M3Q#G_D6]5_\  1_\*#HOB'K_ ,(UJO\ X"/_ (5]/;5]*-JT_P"PJ/\ ,P^H
M0[GS!_8OB+_H6=6_\!'_ ,*;_8GB+/\ R+6K?^ ;_P"%?4.U:-HI_P!@T?YF
M/ZC#N?,EGX7\57\C16_AN_#JI;]_&(%/;[SD#//3K^5>R>"?!">%K::XNI(;
MO5+G DF1"!&F!^[7)/R[@3G SQD<#';X].*.U=V%RVCAI<T=7YFU'"PI/FW8
MZBBBO5.L**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
..**** "BBB@ HHHH _]D!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>9
<FILENAME>tomz_ex991img2.jpg
<TEXT>
begin 644 tomz_ex991img2.jpg
M_]C_X  02D9)1@ ! 0$ 8 !@  #_VP!#  4$! 0$ P4$! 0&!04&" T(" <'
M"! +# D-$Q 4$Q(0$A(4%QT9%!8<%A(2&B,:'!X?(2$A%!DD)R0@)AT@(2#_
MVP!# 04&!@@'" \(" \@%1(5(" @(" @(" @(" @(" @(" @(" @(" @(" @
M(" @(" @(" @(" @(" @(" @(" @("#_P  1" !@ R\# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#[+HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BDW#UI:
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** $S15>XNK:TB\VYN(X$Z;I'"C/IDU5_M[1?\ H+67_@0G
M^-2VENQ%JXNK>TMS/=3+%$.KMP!7DGQ1\5WDNE?8-"NH)+!U_P!,EMY@TFTG
M 4@<JAZ$]^G ^]Z#J5UX:U:Q>QOM2LY;>3AD%RJ[AC'4'/?M7F?B+P3I>YH?
M!M]HVG1RQF.:2XU!V<J>J@'=C/<YY'''.>#%^TE!QIM6?GJ<N(YW!J'_  3E
M_A3JUU%\1;"T#[HKB"6UPY)V( TF$YX^9<_\";N<UV7BC4/B9:_%_1O"NC^,
M-*M+#7+>[NH3-HIF>T6#R_D)\]?,SYG7Y<8Z&L3P3X'NO#OCG3]:U#Q#HDEM
M;>9N6&[)8[HV48!4#JP[UZ=?6GA2^\::3XKN-6@^WZ3!/;V^VZ0)MFV[]P[G
MY%QS2P2E3I<LWU(PBG"FU/N>=?\ "6_$[Q'IGBOQIX<U;2-+TCP]=WEM;:1=
MV!E?4!:\.TLWF*82S*P "\#&<]:RXOCQJO\ PLS0YKVWM['P+J.DV-U<S3+^
M\L)KN*1XB[]TW1[,X RPYY%=5JWPS^'FJZGJDZ>*M1TS3]9E:;5-(T[6!!9W
M\C !VD0<@L  VQEW=\U>U;X?_##6H-9M;Z:V^R:M86VFS6\=TB1QPV[%H1&!
M]PJ3U]A7H<T>Z.VZ[GGGAGXS>.-8TZZO[ZUM+,2^*=)L;6 P_,EA>E'4-SR_
ME2)SV/:O=KW5+JW\:Z/I"%?LUY:7<TF1\VZ-H0N#_P!M&_2N2N/!GP^N=2O-
M0;5(XWN]4L=6=([M%19K146$*.RX1<CO[5N:_%X=U[[))_PDG]F7UD[26M]9
M7,2RP%E*M@.&1@0>5=6'0XR 0N:/=#NNX_2-<U34-6\;VOEQ3'1]02ULHQ\F
MX&QMI\,WN\S<]ACTK/\ !_B:\U;4DL=6U;R=5%J9+G2;O3'LYHY 5#/"68B2
M)2VTE3(,LOS]C+I6G^&=)MY(;;Q1(SW-P]U?3/>1^;?2O&(]TC  @A53;LV8
MV+C@8JM!HVCQWLE]<?$&_OKQ+66SLYKBZMMU@L@7<T>V,!G^13NE$AX]"03F
MCW0M.YJ^+?$C^&8]%NFCG>WN=1%M<+;6<MU*4,,K?)'$K.3N1>BG SVYKC]5
M^)L\MWX@&D1W]M::?9Z;(OVO1;J"<//>212%(I8U>3Y%7:%4Y;(&3Q7<WUSX
M=U"?3IKC6+8O87'VJ$K<J/G\MTYYY&';]*RM8TWPGK=U>WEQKJ07%Y;VT#2P
M748*""9IHV7.1D.YZY!XXHYH]T.Z[D,?BT6_A#5=6M)M5O;B$I!:PZMI,VFF
M6XD(2&-1+%&6#2,BY (&:J1^)M>_X1.2SO+JW3Q%8ZU;Z/?2PP_(1)/&%E5&
M)QO@E1\<@%B.<58NM!\*ZM90V/B3Q-_PD=BEP+C[+JDMM)#(P1E"NBHH=07W
M8.?F53VJI_PAGPZLTNDT"YL_#L=TUM(\>D/!;QB2WD,D<@3:5WY."<?,  >@
MHYH]T%UW+&L>*M:\*75[I^H?9]5F:Q^U:;,(S!N?S8X#'-C( WS1'>N/E+?+
M\F6MR7'BCP]K.BMJFN0:Q9ZA<BSN8_L@@:"1D8H\.TD[-R8*/N.&W;_EP60Z
M/X/,.I)JNM#6Y=3M_L=S<7MXC.\(SB-=FU4 W$_(%)/)R0#5"W\+^&%\6Z=X
MGOO&5SJ-_IN5M_M5S;%50QN@1ML:L^WS'*LQ+@LV&P[ G-'N@NNX]?&.L_\
M"GO#'BIO)_M'49M(CG_=_)BYNX(I<#/'RR-CT.*F_P"$KU9/B''%^X_X1>2Y
M;1E?9^\^W"/S?,WYQY?#PX(SYB]>:AM?#/A.WO8,^*)I=)MKH7UMH\EY";2"
M<.9 Z_+YA <[E4N54@848%5A\/\ X2B!7^Q:+_:BS"Z_M@+ +\SB3S/.,^-V
M_?R3T/3&.*.:/=!==RCI?C[5+S48K6UU.*^U5]>O+&31_L;?+90Z@]NTRR+]
MWRX@CEF)4D[>"ZXZG2;C7&\<:UI=UKCSVVFV]M.BF"-3(91+D,0.@\L8QCO2
M6^F>#[5+,6^L)')9ZC<ZG'(+M-PDN)9)94/JC&9QM/;;W4$:4,OAFWUF_P!5
MCU:V^TWT44,V;E=NV/?MP,\??;]*.:/=!==SSFQ^)&H7'P@U+Q1%>:K)K%MX
M8FU;9=Z#<6MF)UM_,^65X51UW= '.X<C(YK73QEX@NKW6[7PBZ>*%L]-EF6:
M2T,1M[T&/R[=CE%D+HY?:-I 09;$BD6H?"_AJ+PE<^$YO'-[>:+/ICZ3]DGN
M[;$<#1^7\K+&&W!> 23[YK:N8?#,^HZAJ$.O"UN+^W2WG:UO5CW;"2D@P>'7
M)&>XP&R ,/FCW077<3PCX@76+B_B.MF\E@6-FLKK3GL;NU)+ ET?!*,5^4[0
M/E;YF[=A7%Z+:Z%I.JW6K77B^76M1N(U@-S?W, ,<2L66-5B5$ RQ.=NX\9)
MP*Z/^W=%_P"@M9?]_P!?\:7-'N&AI45F_P!NZ+_T%K+_ +_K_C2?V[HG_07L
MO^_Z?XT<T>X7-.BL[^WM%_Z"UE_X$)_C5R.2.:-9(F#HP#*RG((/<&FFGLQ$
MM%03SPVT+37$R11+]YY&"J/J357^WM%_Z"UE_P"!"?XT-I;L#1HK-_M[1?\
MH+V7_?\ 3_&C^W=%_P"@M9?]_P!?\:7-'N.YI45F_P!NZ+_T%K+_ +_K_C1_
M;NB_]!:R_P"_Z_XT<\>X7-*BLW^W=%_Z"UE_W_7_ !H_MW1?^@M9?]_U_P :
M.:/<+D.O_:5\-:FUF)3<_9I3&(<[R^T[=N.<YQC%<[\,%C_X0&TGAN)YQ</)
M(1-P$;>594&3A<J2.><D\9P.G_MS1"=O]KV7_@0G^->7^$M)U;PCXTN8]/\
M$^AMX,N)Y9OLCS?OXRRC;M.#RI55Y<@KDXW'CGDE[53OT:_(QEI)2WZ%.^^(
M_CG_ (1KQ1\0--AT1/#GAV_N;=M+GAD-W=Q6\FR9_.$@6)R58JAC;MD\TEA\
M1_%&H_%O4M CO8K;2;/5(+2.%/#EY=-+&\,4AWW2/Y4+?O"/F'R@ GBNAO\
MP)\,=0UFXU*ZN%V7=P+RZL4U:1+*[G!!$LMN)!&[94$DKR1SFNGTW_A$])O-
M6O-/U"TBGU6Y%Y=,;H-YDOEI'G!;CY8U&!@<5T\T>Z-KH\2T;XQ>.+[X=:UX
MKNKRSDGL]'NKZ&T_X1R\@A62,_+_ *4\ACD''1<$YX/!KT-/$GC_ ,2>*/$=
MIX2DT*SL?#US'9-%JD,LDE],84E?YT<>2@$B@-LDR03C'%;8T7P$/ $G@3[3
M:_V!);/:-;?;>3$V<KOW;NYYSFL[6_!_PXU[5IM2OKXQS7BHEY'::M+;17RH
M,()XXY%67 X^8$XXZ<4<T>Z%IW.8TOXB>+-2^+NK>&WOK>VT[3]82Q6&+P_=
MW7FQ^7&YW7:.(HF^<CYEXP"1S75>(_%.M6/BW4](TZ>-/LFDP7UO%_9LUX]Q
M*\EPI0^6P('[E,=^34:^$/A_!XJF\36FK3VM_<72WLR6^N316\LH"J&:%9!&
MW"*""N"!@UT\=QX9CUNXUI-2LQ=W%O%;R2?:5P8XVD9!C..#*_/O["ES1[H-
M.YRE_P#$2YT^P\:?:+&Y6\T1F%LL.FW%Q$,6,,X$DD:E.'D8'D<8Z=:V(]3\
M3:QJ6N)HUYIUC%I,RVJK=6[3&>7R8YF9BLB[$Q*% P3QNR1@5:>/PC);:U;-
M?6IBUMF:^'VP?O"T*PG'S?+\B*.,=,]:J:CI7@[4KNYN'UDVS7B+'=K9ZFT"
MW2A=HWA'&3MP-PPV !G  HYH]T.Z,;0?B-=ZMJ-CJ$UC#;>'M1TRPN(9"3YM
MK<7*,Z)(<[2C?*@(QA]H^;>-L>@^.-8UA=)>ZG: W6CZ=?NMIH]Q<J9)U8N"
MZ9"#*C /0<Y-=/\ 9O!+6]];M+IQMKVV2SG@,Z^6T**55-N<  ,1Q5.QTOP=
MIWV8:?K'V-;:U@LD2'4RJ^5""(U(W<X!/)Y/>GS1[H+KN=Q16;_;NB_]!:R_
M[_K_ (T?V[HO_06LO^_Z_P"-+FCW"YI45F_V[HO_ $%K+_O^O^-']NZ+_P!!
M:R_[_K_C1SQ[A<TJ*S?[=T7_ *"UE_W_ %_QH_MW1?\ H+67_?\ 7_&CGCW"
MYI45F_V[HO\ T%K+_O\ K_C2?V[HG_07LO\ O^G^-'-'N%S3HK._M[1?^@M9
M?^!"?XU:AN(+F)9K>9)HVZ/&P93^(III[,1/14,TT-O$9IY4BC7[SNP51]2:
MJ?V]HO\ T%K+_P "$_QH;2W8&C16;_;VB_\ 07LO^_Z?XT?V[HO_ $%K+_O^
MO^-+FCW'<TJ*S?[=T7_H+67_ '_7_&C^W=%_Z"UE_P!_U_QHYX]PN:5%9O\
M;NB_]!:R_P"_Z_XT?V[HO_06LO\ O^O^-'/'N%SF/B3K,FC>#I5BB60WS?8]
MS-C8'5LGW. <>YSVP<>W\8>*&M;5KNRGAN)V*RQQ:'<2K;@' +,95W CGY03
MU&,]>NU>]T74]#O=._MNRC-U!)!O\U&V;E*YQD9QGI7"7GA_P_?7MQ>3Z+H$
MLMP[2.__  D,R[F8Y)P(\#D]J\ZLI^T<HRT:6FOZ'-4Y^:\65_#?C+Q-=?%*
M/3M8T^WMS?1>2Q^SRQ%XXA*Z,@D(."S-R1T'0$&C6/B1XYFD\8ZUX5T;19?#
M_@Z>6VNX[^>5+J^>&-99O+*C;$ K84L&W$=@:ZGPO#HVBO-)]JTNPB:&.WCM
M;>^,ZJ$>5RWF.%)):5N,<;>IS@9.N>!/A[KFIZE>3:U<6T6K%6U2SLM7:"VU
M A0N945N<J #C&X#!S71A_<C[[NVRZ5XQ]YW,.Q^,&H:YX_N=)TR33[+2UCT
MZ>W-U8W4T\Z74"2\F/Y(R-V/F_I4&G?%[Q!?V?B'4F;1U72?[4V6(L[KS'^R
M^<$S-GROF,:D^Q('->BZ/9>#]#UW6-8T_4K6*?5?LXGC^T)Y:"&/RXPBC[HV
MBJ]KHW@RS\%ZGX1AU:+^SM2-X9]UVF__ $EW>7![<R-CCCBNKFCW1K='+6/C
M_P ?>+=6DL?!>EZ''_9FFV5YJ#ZK)*/.GN8?.6&$)RJA<9D;/)P%.#4:_$[Q
M!)\5=9\)3?V1IT>EW%E"R-:7=T\IFMXY7 DC 1<%RH+ = 2*U+[P+X!NIK6:
MW\076F2Q646G32:=J[6K7EO&I5$FV, ^ 3AN&&3@XXI%\%^#X/%]WXET_P :
MZII\]W);O<6UKJRK!-Y,:1('4Y+?(@!R<GGUHYH]T.Z[FOXK\4WNC^)],TFW
MN8;2.[LY[EI7TJXOVS&\2A0L+*5'[PG)]!4C>+KR+Q;9Z>+>&;2AY-M>7P!C
M,5U,C/&NPG*C C!!R<W,7^U6L]SX<?7H-9;5[7[5#;R6J_Z0NW8[(S<9ZYC7
M]:P+GPS\.KS[;-=-ILVH7ERUTVHNT+74<NX,C)(1D&/:@3T"+UQ2YH]T%UW+
M2^+KYO'?_"$^3;?VJ";YGR?+_L_=@2 9SYF[]WMSU^?[N%/;5Q2Z=X0C99AJ
MT9O1?G4OMIND,YF/RG+?W?+_ '6W&-F%'05TG]NZ+_T%K+_O^O\ C1S1[AH:
M5%9O]NZ+_P!!:R_[_K_C1_;NB_\ 06LO^_Z_XT<\>X7-*BLW^W=%_P"@M9?]
M_P!?\:/[=T7_ *"UE_W_ %_QHYX]PN:5%9O]NZ+_ -!:R_[_ *_XT?V[HO\
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
M:+_O@4?9+7_GVB_[X%3T4 0?9+7_ )]HO^^!1]DM?^?:+_O@5/10!!]DM?\
MGVB_[X%4K>XT:YMGN+>:RF@C)5Y$9&52.H)' J[-M,$@>/S4VG<F,[ACICOF
MO/[[3GU9?$UQ_9\UW'+:6RV[2V3P-NC:5EC$; %BF\,&QU88Y7@ [C=I?VLV
M7^B_:0OF&'Y=^WINV]<>]-:325O$LV:T6Z==RPG:'9?4+U(KF;6WN8W73YK:
M<ZBNL2WINC;L8Q"9'93YF-I/D%8L Y'3&!1JFI6=_P"(;?0_[-U*"/[1;7<U
MZNEW!26175XT$@CVC!5=[,0%7Y>I)0 U8_$'@Z:6>*'7-'DDMD:294NHB8E7
M[S,,\ =R>E6M-O=!UBW:YTBZL-0@1MC26KI*H; ."5R,X(X]ZR]0L)-8FU>6
MZ6XAMX;<V=N%C)9LX>615ZL"0B@=?W9QPW-G3=0NFFO/M'VR>R5E^SRSV;QR
ML2K,ZE @.T ##;1DG;R1R :$,VC3I--#)9RI"2LKHR,(R.H8CICWJO<:IX;L
M]/CU&\OM-M["4A4N998UB<GH Q.#T/Y5S%GKVGRQ:EXDF\/ZND$%K%##IPT.
MY$[QJY*?(8QN;<W"C(0<DKEL%M;Q:A:)KDDFJ6%R=6:]D$&FRJ\4AM3;A526
M+<RA"N7V$%LG@9"@'0W.O>$;.WM;F\UG2+>WNU+6\LMQ$JS*.I0DX8<CIZUM
M?9;4C_CVB(_W!7%F;5#;P:M>O?VVI>5=00_9]/:82H)LQ-(@!V%D5"5.T_,1
ME2,#L+&2XDL+>2\A6"Z:-6EC5MP1R/F4'O@YH D^R6O_ #[1?]\"C[):_P#/
MM%_WP*GHH @^R6O_ #[1?]\"C[):_P#/M%_WP*GHH @^R6O_ #[1?]\"C[):
M_P#/M%_WP*GHH @^R6O_ #[1?]\"C[):_P#/M%_WP*GHH @^R6O_ #[1?]\"
MI%544*BA0.@ P*?10 QE5U*LH93U!&0:C^R6O_/M%_WP*GHH @^R6O\ S[1?
M]\"C[):_\^T7_? J>B@"#[):_P#/M%_WP*/LEK_S[1?]\"IZ* (/LEK_ ,^T
M7_? H^R6O_/M%_WP*GHH @^R6O\ S[1?]\"C[):_\^T7_? J>B@"JUO9JI9K
M>%5 R24& *S$U;PX]M/=+?6'D0*KR.64!%8D*QSV;!P>AQQFMEB5C9@I8@9V
MCJ?;FN)O-+O]1M?$LK6MY-+>V!CMUO?*#1OMEQ%&$. !O^\>3G[S#[H!TGVO
M1!J8TW[1:?:]VWR?EW;MN[;_ +VWYL=<<]*;)=Z);WBV<\UK%.Q50C;0<L<*
M/8L> ._:LJ2SU!G?31:W +:HEY]N!3:8Q(LO/S9Z#R<8SC!Z<U9U%KO4-1@L
M6T^>*Q1X;F28H&+LK!U08/&&52Q/88&<Y4 M3:EH%NTBW$UM"8T>1O,4+A4&
M7/(Z <FK=O\ V?=HS6\43JIP3Y>/YBL;4=)DU2;69;RWF,)LGL+5(2@D9'4-
M*R%CM!8[%&[@&+/0U8TC^U([V]-Q]K?3V\OR!=;#*K_-YGW?X/N8SSG=CY=M
M $L.J>'KB.::&ZL9(X8Q+(X=<*ASA\_W3@X;H<'GBC^T= ^RM=&XLQ&L@A8_
M+D2$ A,==Q!!V]>16?:W%](]UKUUH]VMU';F.WL%5-ZIG.W=G:9&(7/.T;0
M>"S4KK3]2N+.&[2"YCO9]0%S<36X02V@$#(&A$G#8 5#N!W!G.WD  &Y)JGA
MV.VBN6O+$0R!F23<I7:IPS9[ '@GH#UK5^RVW_/M%_WP*X^WCU:'P[%HKZ5<
MPFY:Y^T7*['98VE8[B%;'G2*V[CY5+,>P0]G&%6-55=J@  >@H 9]DM?^?:+
M_O@4?9+7_GVB_P"^!4]% $'V2U_Y]HO^^!1]DM?^?:+_ +X%3T4 0?9+7_GV
MB_[X%'V2U_Y]HO\ O@5/10!!]DM?^?:+_O@4?9+7_GVB_P"^!4]% $'V2U_Y
M]HO^^!4BJJ*%10H'0 8%/HH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ J&.&*$,(XU3<Q=L<9)ZFIJ* "BBB@ HHHH IO:0374%U)$'EM]WE,
MW.PD8)'OC(SUP2.YJTJJHVJH ]!3J* "BBB@ HHHH 8%5<E5 +')P.II]%%
M!1110 4444 ,*JPPR@C.>:?110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
+%%%% !1110!__]D!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.2</span><table class="report" border="0" cellspacing="2" id="idm140172277007824">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Cover<br></strong></div></th>
<th class="th"><div>Jul. 05, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_CoverAbstract', window );"><strong>Cover [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">TOMI ENVIRONMENTAL SOLUTIONS, INC.<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0000314227<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">8-K<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Jul.  05,  2022<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation State Country Code</a></td>
<td class="text">FL<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">59-1947988<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_WrittenCommunications', window );">Written Communications</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_SolicitingMaterial', window );">Soliciting Material</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_PreCommencementTenderOffer', window );">Pre Commencement Tender Offer</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_PreCommencementIssuerTenderOffer', window );">Pre Commencement Issuer Tender Offer</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">000-09908<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity Address Address Line 1</a></td>
<td class="text">8430 SPIRES WAY<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address City Or Town</a></td>
<td class="text">Frederick<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address State Or Province</a></td>
<td class="text">MD<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address Postal Zip Code</a></td>
<td class="text">21701<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">800<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">525-1698<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_Security12bTitle', window );">Security 12b Title</a></td>
<td class="text">Common Stock, $0.01 par value per share<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">TOMZ<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NASDAQ<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CoverAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CoverAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_PreCommencementIssuerTenderOffer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 13e<br> -Subsection 4c<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_PreCommencementIssuerTenderOffer</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_PreCommencementTenderOffer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 14d<br> -Subsection 2b<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_PreCommencementTenderOffer</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SolicitingMaterial">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as soliciting material pursuant to Rule 14a-12 under the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Section 14a<br> -Number 240<br> -Subsection 12<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SolicitingMaterial</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_WrittenCommunications">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as written communications pursuant to Rule 425 under the Securities Act.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br> -Section 425<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_WrittenCommunications</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>11
<FILENAME>tomz_8k_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2022"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="tomz-20220705.xsd" xlink:type="simple"/>
    <context id="From2022-07-05to2022-07-05">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000314227</identifier>
        </entity>
        <period>
            <startDate>2022-07-05</startDate>
            <endDate>2022-07-05</endDate>
        </period>
    </context>
    <unit id="USD">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="Shares">
        <measure>shares</measure>
    </unit>
    <unit id="USDPShares">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <dei:EntityCentralIndexKey contextRef="From2022-07-05to2022-07-05">0000314227</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag contextRef="From2022-07-05to2022-07-05">false</dei:AmendmentFlag>
    <dei:DocumentType contextRef="From2022-07-05to2022-07-05">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate contextRef="From2022-07-05to2022-07-05">2022-07-05</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName contextRef="From2022-07-05to2022-07-05">TOMI ENVIRONMENTAL SOLUTIONS, INC.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="From2022-07-05to2022-07-05">FL</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber contextRef="From2022-07-05to2022-07-05">000-09908</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber contextRef="From2022-07-05to2022-07-05">59-1947988</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="From2022-07-05to2022-07-05">8430 SPIRES WAY</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="From2022-07-05to2022-07-05">Frederick</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="From2022-07-05to2022-07-05">MD</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="From2022-07-05to2022-07-05">21701</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="From2022-07-05to2022-07-05">800</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="From2022-07-05to2022-07-05">525-1698</dei:LocalPhoneNumber>
    <dei:WrittenCommunications contextRef="From2022-07-05to2022-07-05">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial contextRef="From2022-07-05to2022-07-05">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer contextRef="From2022-07-05to2022-07-05">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer contextRef="From2022-07-05to2022-07-05">false</dei:PreCommencementIssuerTenderOffer>
    <dei:Security12bTitle contextRef="From2022-07-05to2022-07-05">Common Stock, $0.01 par value per share</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="From2022-07-05to2022-07-05">TOMZ</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="From2022-07-05to2022-07-05">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityEmergingGrowthCompany contextRef="From2022-07-05to2022-07-05">false</dei:EntityEmergingGrowthCompany>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>12
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( .1#Y50'04UB@0   +$    0    9&]C4')O<',O87!P+GAM
M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG
M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGD<Z,STA)8*O4'J@)I9GF
M3?X.CD:?<@X>K7A.YNJQ<&4GPZ4A!0W_<FW>J=0U[R;UEA_6\#MI7E!+ P04
M    " #D0^54MUPLKN\    K @  $0   &1O8U!R;W!S+V-O<F4N>&ULS9+/
M:L,P#(=?9?B>R$GV!TSJ2\M.&PQ6V-C-V&IK&L?&UDCZ]DN\-F5L#["CI9\_
M?0*U.@CM([Y$'S"2Q70SNJY/0H<5.Q % 9#T 9U*Y93HI^;.1Z=H>L8]!*6/
M:H]0<WX/#DD910IF8!$6(I.MT4)'5.3C&6_T@@^?L<LPHP$[=-A3@JJL@,EY
M8CB-70M7P PCC"Y]%] LQ%S]$YL[P,[),=DE-0Q#.30Y-^U0P?OSTVM>M[!]
M(M5KG'XE*^@4<,4ND]^:]6;[R&3-Z[K@#P6_VU:U:"K!;S]FUQ]^5V'GC=W9
M?VQ\$90M_+H+^0502P,$%     @ Y$/E5)E<G",0!@  G"<  !,   !X;"]T
M:&5M92]T:&5M93$N>&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T$W-I=MNTF83M
M3A^%$5B-;'EDD81_OT<V$,N6#>V23;J;/ 0LZ?O.14?GZ#AY\^XN8NB&B)3R
M>&#9+]O6N[<OWN!7,B0103 9IZ_PP JE3%ZU6FD PSA]R1,2P]R"BPA+>!3+
MUES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?,_@5RU2-9:,!
M$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA5,+$P&IG/U9K
MQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M&N#C\7@XMLO2
MBW <!.!1NY["G?1LOZ1!";2C:=!DV/;:KI&FJHU33]/W?=_KFVB<"HU;3]-K
M=]W3CHG&K=!X#;[Q3X?#KHG&J]!TZVDF)_VN:Z3I%FA"1N/K>A(5M>5 TR
M6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T1G*=D 4. #?$
MT4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7<K_WUE[O)I#-ZG7TZSFN4
M?VFK :?MNYO/D_QSZ.2?IY/734+.<+PL"?'[(UMAAR=N.Q-R.AQG0GS/]O:1
MI24RS^_Y"NM./&<?5I:P7<_/Y)Z,<B.[W?98??9/1VXCUZG LR+7E$8D19_(
M+;KD$3BU20TR$S\(G8:8:E < J0),9:AAOBTQJP1X!-]M[X(R-^-B/>K;YH]
M5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J-2S%UGB5P/&M
MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZ<TT#PE"\D^DJ1CVFS(Z=T)LWH
M,QK!1J\;=8=HTCQZ_@7YG#4*')$;'0)G&[-&(81IN_ >KR2.FJW"$2M"/F(9
M-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$.$9)>-T(^8LZ+
MD!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]072N0/)J<_Z3(T
M!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL!_]':-\*K^(+
M.7\N?<^E[[GT/:'2MS<C?6?!TXM;WD9N6\3[KC':US0N*&-7<LW(QU2ODRG8
M.9_ [/UH/I[Q[?K9)(2OFEDM(Q:02X&S022X_(O*\"K$">AD6R4)RU3393>*
M$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.W<DOJMI2^M28X
M2O2QS'!.'LL,.V<\DAVV=Z =-?OV77;D(Z4P4Y=#N!I"O@-MNIW<.CB>F)&Y
M"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>(\J(A[J&&F,_#
M0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R4E5@,5O& RN0
MHGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K>9;'!51W/55OR
ML+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4XOT4SMA*7&+SC
MYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5YYN<KGHB=OJ7
M=\%@\OUPR4</Y3OG7_1=0ZY^]MWC^FZ3.TA,G'G%$0%T10(CE1P&%A<RY%#N
MDI &$P'-E,E$\ *"9*8<@)CZ"[WR#+DI%<ZM/CE_12R#ADY>TB42%(JP# 4A
M%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+A=OB5,V[&KXF
M8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.'<YMZN,)%K/]8UA[Y,M\Y<-LZW@->
MYA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> ,?-2K6J5D*Q$_
M2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H:,]6+K#F-"F]!
MU4#E/]O4#6CV#30<D05>,9FV-J/D3@H\W/[O#;#"Q([A[8N_ 5!+ P04
M" #D0^543"#:CDD$  !X$   &    'AL+W=O<FMS:&5E=',O<VAE970Q+GAM
M;(V877/J-A"&_XK&[?0J"98# 5)@AA#2TA,^&C@GT]/IA; %:&)+KB2'Y-]W
M98B=MF8-%]BRM2^/I?6[$KV]TB]FQ[DE;TDL3=_;69O>-AHFW/&$F2N5<@EW
M-DHGS$)3;QLFU9Q%>5 2-P+?OVDD3$AOT,NO+?2@IS(;"\D7FI@L29A^O^.Q
MVO<]ZGU<>!+;G747&H->RK9\R>W7=*&AU2A4(I%P:8221/--WQO2V[N@Z0+R
M'M\$WYM/Y\0]REJI%]>81'W/=T0\YJ%U$@P.KWS$X]@I <??1U&O^$T7^/G\
M0_TA?WAXF#4S?*3B9Q'97=_K>"3B&Y;%]DGM?^7'!VHYO5#%)O\F^T/?IN^1
M,#-6)<=@($B$/!S9VW$@S@D(C@%!SGWXH9SRGEDVZ&FU)]KU!C5WDC]J'@UP
M0KI965H-=P7$V<%(O7+=:UB0<A<:X3'L[A 6G C[+8NOB-^Z(($?!/\.;P!!
M@1$4&$&N=XUAD#^':V,U3-1?540'A6:U@LO>6Y.RD/<]2$_#]2OW!C_]0&_\
MGQ&^ZX+O&E,?C*45]IT\\:UPA-*2&4MX%26NLYI/)V0\^S9YFL^FX]EJ^$B6
M\\>OJ\E\MKP@D]GH"H%M%K#-<V!'7 )J3"8RXF_D"W^OPL65?/A<TV80M!&L
M5H'50L7N59C!^VS)ZCVM'#H\O'/Y!8&X*2!N4)4A$$0YQ4/,ME44>/R&Q88C
M'.V"HWW.'(T3KK=";LDO$&]W9*22E,G*F<+UZK@Z!5?GO$E:<"U41,8R(F L
ME?.%*^46D7M$G4ET"[;N.6,VD:'2J=(LM_6E!3H8MPR2'7)>196HN/##(T)'
M_=)*_7/X5NR-3"(80[$1X0%REB7K$S:+2[:ZE[3;;'<['8SPD]E35.Y9"VNY
M=&F69/)(9RJY<*&Z=*.E\5/4MP=+%8M06/<.3&$FM6!Q)0^N4LM3&CW%'7JA
M>3X\7(;\X%9@&%";YIO-B1G$]6K)2E>GN!G_CVQB3 9DM8"X;"U@Z>\4=^AC
M_C^(F&,9CXM Q;GTNUT?3?C2[2ENUT>D813!FL 4QT?H1F@E':[7:5[[9+F8
M/(V7Y'GX!\985@)Z5BGX8!NYQARF5>UE)2&N]J Y9(,(7S"VLAI0W,3_PW8P
M6X!;:/4J( \K 7')Z3U&5M8">E8Q^"!;*&-AK?-=I"=K0(U@0-L^1=""L@X$
MN&GG,SB$/=))E!J!CN]C(*7=![A+/ZH0QF2Q4Q)[(6M$6D'KDMYTL?<Q^+3,
MKW%['F;:#0\-UF0E;%P]/+B(,\&\\JOPY8+\Z%_YE*1,DU<69YRDX(5FQS3F
M:4%9#H*:!;MFD:M-R_=DK2HK4YW ?/H=(RGM/\!]NABZ\5NX8W++3VY!:H1F
MP^7]\/<JIL:G?:3;DT^96YP:$O,-*/E7;;!N?=CF'AI6I?G6<JTL;%3STQUG
MX#^N ]S?*&4_&FZW6OS9,/@'4$L#!!0    ( .1#Y52?H!OPL0(  .(,   -
M    >&PO<W1Y;&5S+GAM;-U7;6O;,!#^*T(_8&YB:N*1&+9 8;"-0O-A7Y58
M=@1Z\62Y<_KKI[-L)VEU9=V'L<VAR=T]NKM'=R>9KEMWDOSAR+DCO9*ZW="C
M<\W[)&D/1ZY8^\XT7'ND,E8QYU5;)VUC.2M;<%(R6=[<9(EB0M-BK3MUIUQ+
M#J;3;D-O:%*L*Z//EI0&@U_*%">/3&[HEDFQMV)8RY20IV!>@N%@I+'$>2I\
M0Q=@:9\"O @:L!SC**&-!6,2,H3O_;C\&3!IK5>%E#/!)0V&8MTPY[C5=UX9
M%@_&%Q 9Y=VI\0QKRTZ+Y2T].PP_/LG>V)+;.<V"3J9B+7D%=*RHC_#K3),
MZ)Q17B@%JXUF X?)8Q1\V .7\@%:^*VZBMU7)/3B4PEM(+#52?2$1C&$"0K$
MOXP68E^$O?VML*01C\9][/QN]*!_[XSC]Y97HA_TOIKS8]$7>'36-/+T08I:
M*Q[V_LL)BS6;_,C16/'DL\&D'+R!6TH>N77B<&GY85FSX[V;IJFO<,[+?Y#S
MGZUSS36W3%Z2]J/_-U?Y+8R3\?1<'-&K SI;"5R$&_H5[E=YYD#VG9!.Z%$[
MBK+D^L4Y]>$=V_L+_"J^7U_RBG72[69P0\_R%UZ*3N7SJGNHR[CJ+'^&^VB1
MS;>PSR5TR7M>;D?5UOM!)%[P6<<'')XC=\,31S"?@,41P+ \& /,)WAA>?ZG
M_:S0_00,X[:*(BO49X7Z!*\8LAT^6)ZX3^Z?^$[S/$VS#*OH=AMEL,7JEF7P
M%X^&<0,/+ ]D>ENM\6[C$_+Z'& ]?6U"L)WBDXCM%*\U(/&Z@4>>Q[N-Y0$/
MK O8[$#^>!Z8J;A/FD)7,6[8"<:1/,<0F,7XC&894IT,/O'^8*<D3?,\C@ 6
M9Y"F& *G$4<P!L !0])T> \^>Q\ETWLJ.?]74_P$4$L#!!0    ( .1#Y527
MBKL<P    !,"   +    7W)E;',O+G)E;'.=DKENPS ,0'_%T)XP!] AB#-E
M\18$^0%6H@_8$@6*19V_K]JE<9 +&7D]/!+<'FE [3BDMHNI&/T04FE:U;@!
M2+8ECVG.D4*NU"P>-8?20$3;8T.P6BP^0"X99K>]9!:G<Z17B%S7G:4]VR]/
M06^ KSI,<4)I2$LS#O#-TG\R]_,,-47E2B.56QIXT^7^=N!)T:$B6!::1<G3
MHAVE?QW']I#3Z:]C(K1Z6^CY<6A4"H[<8R6,<6*T_C6"R0_L?@!02P,$%
M  @ Y$/E5*K$(A8S 0  (@(   \   !X;"]W;W)K8F]O:RYX;6R-4=%NPC ,
M_)4J'[ 6M"$-45Y VY"F#8V)]]"ZU"*)*\>%C:^?VZH:TE[VE-S9NMQ=%A?B
MTX'HE'QY%V)N:I%FGJ:QJ,';>$<-!)U4Q-Z*0CZFL6&P9:P!Q+MTFF6SU%L,
M9KD8M;:<W@(2* 0I*-D1>X1+_)UW,#ECQ ,ZE._<]'<')O$8T.,5RMQD)HDU
M75Z(\4I!K-L53,[E9C(,]L""Q1]ZUYG\M(?8,V(/'U:-Y&:6J6"%'*7?Z/6M
M>CR#+@^H%7I")\!K*_#,U#88CIV,IDAO8O0]C.=0XIS_4R-5%1:PIJ+U$&3H
MD<%U!D.LL8DF"=9#;E9T!N[RZ .;<L@F:NJF*9ZC#GA3#O9&3R54&*!\4YFH
MO/93;#GICEYG>O\P>=0>6N=6RKV'5[+E&''\GN4/4$L#!!0    ( .1#Y50D
M'INBK0   /@!   :    >&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'.UD3T.
M@S ,A:\2Y0 U4*E#!4Q=6"LN$ 7S(Q(2Q:X*MR^% 9 Z=&&RGBU_[\E.GV@4
M=VZ@MO,D1FL&RF3+[.\ I%NTBB[.XS!/:A>LXEF&!KS2O6H0DBBZ0=@S9)[N
MF:*<//Y#='7=:7PX_;(X\ \PO%WHJ45D*4H5&N1,PFBV-L%2XLM,EJ*H,AF*
M*I9P6B#BR2!M:59]L$].M.=Y%S?W1:[-XPFNWPQP>'3^ 5!+ P04    " #D
M0^5499!YDAD!  #/ P  $P   %M#;VYT96YT7U1Y<&5S72YX;6RMDTU.PS 0
MA:\295LE+BQ8H*8;8 M=< %C3QJK_I-G6M+;,T[:2J 2%85-K'C>O,^>EZS>
MCQ&PZ)WUV)0=47P4 E4'3F(=(GBNM"$Y2?R:MB)*M9-;$/?+Y8-0P1-XJBA[
ME.O5,[1R;ZEXZ7D;3?!-F<!B63R-PLQJ2AFC-4H2U\7!ZQ^4ZD2HN7/08&<B
M+EA0BJN$7/D=<.I[.T!*1D.QD8E>I6.5Z*U .EK >MKBRAE#VQH%.JB]XY8:
M8P*IL0,@9^O1=#%-)IXPC,^[V?S!9@K(RDT*$3FQ!'_'G2/)W55D(TADIJ]X
M(;+U[/M!3EN#OI'-X_T,:3?D@6)8YL_X>\87_QO.\1'"[K\_L;S63AI_YHOA
M/UY_ 5!+ 0(4 Q0    ( .1#Y50'04UB@0   +$    0              "
M 0    !D;V-0<F]P<R]A<' N>&UL4$L! A0#%     @ Y$/E5+=<+*[O
M*P(  !$              ( !KP   &1O8U!R;W!S+V-O<F4N>&UL4$L! A0#
M%     @ Y$/E5)E<G",0!@  G"<  !,              ( !S0$  'AL+W1H
M96UE+W1H96UE,2YX;6Q02P$"% ,4    " #D0^543"#:CDD$  !X$   &
M            @($."   >&PO=V]R:W-H965T<R]S:&5E=#$N>&UL4$L! A0#
M%     @ Y$/E5)^@&_"Q @  X@P   T              ( !C0P  'AL+W-T
M>6QE<RYX;6Q02P$"% ,4    " #D0^54EXJ[',     3 @  "P
M    @ %I#P  7W)E;',O+G)E;'-02P$"% ,4    " #D0^54JL0B%C,!   B
M @  #P              @ %2$   >&PO=V]R:V)O;VLN>&UL4$L! A0#%
M  @ Y$/E5"0>FZ*M    ^ $  !H              ( !LA$  'AL+U]R96QS
M+W=O<FMB;V]K+GAM;"YR96QS4$L! A0#%     @ Y$/E5&60>9(9 0  SP,
M !,              ( !EQ(  %M#;VYT96YT7U1Y<&5S72YX;6Q02P4&
/  D "0 ^ @  X1,

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<FILENAME>Show.js
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
// Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission.  Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105.
var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0);
e.removeAttribute('id');a.parentNode.appendChild(e)}}
if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'}
e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<FILENAME>report.css
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
/* Updated 2009-11-04 */
/* v2.2.0.24 */

/* DefRef Styles */
..report table.authRefData{
	background-color: #def;
	border: 2px solid #2F4497;
	font-size: 1em;
	position: absolute;
}

..report table.authRefData a {
	display: block;
	font-weight: bold;
}

..report table.authRefData p {
	margin-top: 0px;
}

..report table.authRefData .hide {
	background-color: #2F4497;
	padding: 1px 3px 0px 0px;
	text-align: right;
}

..report table.authRefData .hide a:hover {
	background-color: #2F4497;
}

..report table.authRefData .body {
	height: 150px;
	overflow: auto;
	width: 400px;
}

..report table.authRefData table{
	font-size: 1em;
}

/* Report Styles */
..pl a, .pl a:visited {
	color: black;
	text-decoration: none;
}

/* table */
..report {
	background-color: white;
	border: 2px solid #acf;
	clear: both;
	color: black;
	font: normal 8pt Helvetica, Arial, san-serif;
	margin-bottom: 2em;
}

..report hr {
	border: 1px solid #acf;
}

/* Top labels */
..report th {
	background-color: #acf;
	color: black;
	font-weight: bold;
	text-align: center;
}

..report th.void	{
	background-color: transparent;
	color: #000000;
	font: bold 10pt Helvetica, Arial, san-serif;
	text-align: left;
}

..report .pl {
	text-align: left;
	vertical-align: top;
	white-space: normal;
	width: 200px;
	white-space: normal; /* word-wrap: break-word; */
}

..report td.pl a.a {
	cursor: pointer;
	display: block;
	width: 200px;
	overflow: hidden;
}

..report td.pl div.a {
	width: 200px;
}

..report td.pl a:hover {
	background-color: #ffc;
}

/* Header rows... */
..report tr.rh {
	background-color: #acf;
	color: black;
	font-weight: bold;
}

/* Calendars... */
..report .rc {
	background-color: #f0f0f0;
}

/* Even rows... */
..report .re, .report .reu {
	background-color: #def;
}

..report .reu td {
	border-bottom: 1px solid black;
}

/* Odd rows... */
..report .ro, .report .rou {
	background-color: white;
}

..report .rou td {
	border-bottom: 1px solid black;
}

..report .rou table td, .report .reu table td {
	border-bottom: 0px solid black;
}

/* styles for footnote marker */
..report .fn {
	white-space: nowrap;
}

/* styles for numeric types */
..report .num, .report .nump {
	text-align: right;
	white-space: nowrap;
}

..report .nump {
	padding-left: 2em;
}

..report .nump {
	padding: 0px 0.4em 0px 2em;
}

/* styles for text types */
..report .text {
	text-align: left;
	white-space: normal;
}

..report .text .big {
	margin-bottom: 1em;
	width: 17em;
}

..report .text .more {
	display: none;
}

..report .text .note {
	font-style: italic;
	font-weight: bold;
}

..report .text .small {
	width: 10em;
}

..report sup {
	font-style: italic;
}

..report .outerFootnotes {
	font-size: 1em;
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.22.2</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>1</ContextCount>
  <ElementCount>22</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>0</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>3</UnitCount>
  <MyReports>
    <Report instance="tomz_8k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>000001 - Document - Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tomz.com/role/Cover</Role>
      <ShortName>Cover</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="8-K" original="tomz_8k.htm">tomz_8k.htm</File>
    <File>tomz-20220705.xsd</File>
    <File>tomz-20220705_cal.xml</File>
    <File>tomz-20220705_def.xml</File>
    <File>tomz-20220705_lab.xml</File>
    <File>tomz-20220705_pre.xml</File>
    <File>tomz_ex991.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="22">http://xbrl.sec.gov/dei/2022</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>17
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "tomz_8k.htm": {
   "axisCustom": 0,
   "axisStandard": 0,
   "contextCount": 1,
   "dts": {
    "calculationLink": {
     "local": [
      "tomz-20220705_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "tomz-20220705_def.xml"
     ]
    },
    "inline": {
     "local": [
      "tomz_8k.htm"
     ]
    },
    "labelLink": {
     "local": [
      "tomz-20220705_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "tomz-20220705_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "tomz-20220705.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd",
      "http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd",
      "https://xbrl.fasb.org/srt/2022/elts/srt-roles-2022.xsd",
      "https://xbrl.fasb.org/srt/2022/elts/srt-types-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-roles-2022.xsd",
      "https://xbrl.fasb.org/us-gaap/2022/elts/us-types-2022.xsd",
      "https://xbrl.sec.gov/country/2022/country-2022.xsd",
      "https://xbrl.sec.gov/currency/2022/currency-2022.xsd",
      "https://xbrl.sec.gov/dei/2022/dei-2022.xsd",
      "https://xbrl.sec.gov/exch/2022/exch-2022.xsd",
      "https://xbrl.sec.gov/naics/2022/naics-2022.xsd",
      "https://xbrl.sec.gov/sic/2022/sic-2022.xsd",
      "https://xbrl.sec.gov/stpr/2022/stpr-2022.xsd"
     ]
    }
   },
   "elementCount": 23,
   "entityCount": 1,
   "hidden": {
    "http://xbrl.sec.gov/dei/2022": 2,
    "total": 2
   },
   "keyCustom": 0,
   "keyStandard": 22,
   "memberCustom": 0,
   "memberStandard": 0,
   "nsprefix": "tomz",
   "nsuri": "http://tomz.com/20220705",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "strong",
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "body",
       "html"
      ],
      "baseRef": "tomz_8k.htm",
      "contextRef": "From2022-07-05to2022-07-05",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:EntityRegistrantName",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "000001 - Document - Cover",
     "role": "http://tomz.com/role/Cover",
     "shortName": "Cover",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "strong",
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "body",
       "html"
      ],
      "baseRef": "tomz_8k.htm",
      "contextRef": "From2022-07-05to2022-07-05",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:EntityRegistrantName",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 0,
   "tag": {
    "dei_AmendmentFlag": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.",
        "label": "Amendment Flag"
       }
      }
     },
     "localname": "AmendmentFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_CityAreaCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area code of city",
        "label": "City Area Code"
       }
      }
     },
     "localname": "CityAreaCode",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CoverAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cover page.",
        "label": "Cover [Abstract]"
       }
      }
     },
     "localname": "CoverAbstract",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "xbrltype": "stringItemType"
    },
    "dei_DocumentPeriodEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-MM-DD.",
        "label": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentType": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.",
        "label": "Document Type"
       }
      }
     },
     "localname": "DocumentType",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_EntityAddressAddressLine1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name",
        "label": "Entity Address Address Line 1"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCityOrTown": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the City or Town",
        "label": "Entity Address City Or Town"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressPostalZipCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Code for the postal or zip code",
        "label": "Entity Address Postal Zip Code"
       }
      }
     },
     "localname": "EntityAddressPostalZipCode",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressStateOrProvince": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the state or province.",
        "label": "Entity Address State Or Province"
       }
      }
     },
     "localname": "EntityAddressStateOrProvince",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.",
        "label": "Entity Central Index Key"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "centralIndexKeyItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "Entity Emerging Growth Company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityFileNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.",
        "label": "Entity File Number"
       }
      }
     },
     "localname": "EntityFileNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityIncorporationStateCountryCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two-character EDGAR code representing the state or country of incorporation.",
        "label": "Entity Incorporation State Country Code"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.",
        "label": "Entity Registrant Name"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.",
        "label": "Entity Tax Identification Number"
       }
      }
     },
     "localname": "EntityTaxIdentificationNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "employerIdItemType"
    },
    "dei_LocalPhoneNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Local phone number for entity.",
        "label": "Local Phone Number"
       }
      }
     },
     "localname": "LocalPhoneNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_PreCommencementIssuerTenderOffer": {
     "auth_ref": [
      "r3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act.",
        "label": "Pre Commencement Issuer Tender Offer"
       }
      }
     },
     "localname": "PreCommencementIssuerTenderOffer",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_PreCommencementTenderOffer": {
     "auth_ref": [
      "r4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act.",
        "label": "Pre Commencement Tender Offer"
       }
      }
     },
     "localname": "PreCommencementTenderOffer",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r0"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Title of a 12(b) registered security.",
        "label": "Security 12b Title"
       }
      }
     },
     "localname": "Security12bTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the Exchange on which a security is registered.",
        "label": "Security Exchange Name"
       }
      }
     },
     "localname": "SecurityExchangeName",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "edgarExchangeCodeItemType"
    },
    "dei_SolicitingMaterial": {
     "auth_ref": [
      "r5"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as soliciting material pursuant to Rule 14a-12 under the Exchange Act.",
        "label": "Soliciting Material"
       }
      }
     },
     "localname": "SolicitingMaterial",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_TradingSymbol": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Trading symbol of an instrument as listed on an exchange.",
        "label": "Trading Symbol"
       }
      }
     },
     "localname": "TradingSymbol",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "dei_WrittenCommunications": {
     "auth_ref": [
      "r6"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as written communications pursuant to Rule 425 under the Securities Act.",
        "label": "Written Communications"
       }
      }
     },
     "localname": "WrittenCommunications",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://tomz.com/role/Cover"
     ],
     "xbrltype": "booleanItemType"
    }
   },
   "unitCount": 3
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b"
  },
  "r1": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r2": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r3": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13e",
   "Subsection": "4c"
  },
  "r4": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "14d",
   "Subsection": "2b"
  },
  "r5": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "14a",
   "Subsection": "12"
  },
  "r6": {
   "Name": "Securities Act",
   "Number": "230",
   "Publisher": "SEC",
   "Section": "425"
  }
 },
 "version": "2.1"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>18
<FILENAME>0001654954-22-009214-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001654954-22-009214-xbrl.zip
M4$L#!!0    ( .1#Y51<9$ 1B 0  (,6   1    =&]M>BTR,#(R,#<P-2YX
M<V3-6$EOXS84OA?H?V!U:0M4FXUD:L/)(,L,$""3 LZTR*V@:=HF*I,J27GI
MK^\CM5BR)8\DYS YD7[?]W8]DIE\W*TCM*%2,<%OG- +'$0Y$7/&ES=.HERL
M"&,.4AKS.8X$IS?.GBKGX^V//TQ^<MVW^^DS>A0D65.NT8.D6-,YVC*]0D;T
M!2M-I>MFZ+]2.V,T\(9>\'OQ^SU6P!+<<D 8%I)'T(?$ A&CV5*##WYPY0^"
MP:  O8J%WF))$99DQ30E.I$X0G.JV)(C<!RE 8W1W<\$/:ZP7.-8TC7F)BAT
MM]%>H>M!Q'O)EBN-?B&_(F,&/;DOG[ZB^T0Q3I5"KR)*C"OJ-_3$B8?NH@A-
M#4.A*554;N@\4Z?("HP@R#!7XUUTXZRTCL>^O]UNO=U,1IZ02X@D&/IOSXS_
MXV1(21>-T&L?I#F0)%)"L?8%VB(5)=Y2;/Q<:G.54Z"B2XQC%VM=L!98S:S^
M3.B#4+)9HJ'.&4TQ4F\$!!7]=$=6]4@CJ4 9WU"EZ\&I#.#AT U"=QCF)$Z7
MIL,:\S/RI8BHG\$*%F9$U5NRHN,4Z7U,56U^K*0"5SJ6#;D!21E:<7H[S%T.
M_;<OSZ^V59RB5Z =ZN#A:#3RK32'GB"KC67$,_BZ"LT@96?PC)LOG53P\Z,B
M9> K/Q56H*P6>IU"6=&X(N%:-O5M*JS61,LS)0=I40VIFZI7B"J:YUH>$2KZ
M0>P;L>$$IA4'8=F4:;8&4U94-459?<0@J !YLOZ&-X"@DI&"('@+CN#N$0_\
MK'6^;F0TCXLR6(OU?P72;#PBUA81? BN'%2,EL]"KA_I B<1N)#P?Q,<L04S
MGRR-J#E,*H"26&.YI/H%KZF*,:%GC,$(1A/,N=#VZ#!;V,<QXPMA-VAB/H^Q
MJ=17R! RBS^G3Z<J[4QY$'!,.HC!\$F7J8Y,R9PN&&?63F#^0N0>SD476<;$
M/X:6-21P!O[!;^T:3B<%1.NW.1HR9@9I8A$<D23J2#IXT\#)?LJS5,Y</EVF
M=('L5!J;3KMQ%%O'D9DA]K>5/=!,,MV\-G]#@!YT3 XQRL],)9O_XYQDAG,5
M</:?:#F9FJ!$Q%1J!I_F833Z[Q-3A&==8P(*C;[+8*"7N@9SU'[?74C0Z5U#
MJGX<[QW1Q"]-(]A41M4$XA%2(WXRZ<Z=VNF5\UD0J^<,Q>S<G.>:G]QP !<M
M;Z?FF7]=/#B$ULV#G-?5@_J+2$O;.<$8O6IOKOZ"4F=3G:/D&]N8/:Q7K_7M
MS)<YQ:ZG X?;2BO;.=PLVEML<85I4^PR\R4EFJ*/3*>%UY=XTL^+?BXTO:-:
MY;_ VU7/"MAK=C;OX )(M$MW<03O9RWD_C/LVR4BDK*BY=-!R45EJ7GXM76G
MS'HW'SJD(V=<U!/E1VRKIC@0TF7/47!X_;>RFL/-HKW%QE?569LGSQF?1EH=
M=/2T7WY ]K5O=5PZ"LOOT29'OL6T>]6C[(=_;+2K>XZWJQZ9AY=F]\*7GZ=I
M\G,U_3SH7OI:#SI6O^99WK?O>D5=>N%?$+3]GV/5_L1/]=W^#U!+ P04
M" #D0^54 +TRSMP!  "+ P  %0   '1O;7HM,C R,C W,#5?8V%L+GAM;(U3
MS6^;,!2_3]K_\,8.VZ090Z*J"PJM\M%#I'0'TDV]NN8E6#-V9)N0[*^?#25M
MM$TJ!X1YOZ_W>$QOC[6$ QHKM,JC-$XB0,5U*=0NCQI+F.5"1& =4R636F$>
MG=!&MS?OWTT_$/(X+]:PU+RI43E8&&0.2VB%JR"4[IEU: AY1O_L?3(8Q>,X
M^79^/V?6L[3J.+Z8GBM+KP=Z"SPH=]3DFB97=)2,1F?01F]=RPP",[P2#KEK
M#)-0HA4[!3XX] UE,/O$85DQ4[.]P9JIT!3,#BX^:RWT_F3$KG+PF7^!8 ,K
M\OWN >:-%0JMA8V638ABO\)*\1AF4D(1&!8*M&@.6#[+2:%^9>'VY/L#/VAE
MLZ,5>50YM\\H;=LV;L>Q-CO?3Y+2Q_OUAE<^%Q$J#)QC-+""RK]XZ60RH5UU
M@/Z%/#X9.7B,Z1#'PZW(;&>WUKP;[AMH\%]$.)$!1L(KDH[(.(V/MHS\- #Z
M>1@ML< M0'CX4:S.ID[7OV.N:QH*=*']4OJ0':<RN,VC "#ABR37R560_7@!
M<J>]7TXKZKWTW=%7EIQ)WLBNQ;4_7^#QZ%"56 XJP?PMD9QP 9CT5PKDY2]X
M]1AV[TYY[,GORE;[O0LA^G13>K$?-W\ 4$L#!!0    ( .1#Y53[C,/-D@(
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
M,+<WMTEB^08_Q+0@^36RK#=ZCC6_NWMX82P_J9^"99=P^O.HJ_\!4$L#!!0
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
M?#:@9Y."D5PU@<(L:2P D%0E<@KF.9J=^\VAF#!+:\@Z 6N(PAA HQCIC/F
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
M% ,4    " #D0^547&1 $8@$  "#%@  $0              @ $     =&]M
M>BTR,#(R,#<P-2YX<V102P$"% ,4    " #D0^54 +TRSMP!  "+ P  %0
M            @ &W!   =&]M>BTR,#(R,#<P-5]C86PN>&UL4$L! A0#%
M  @ Y$/E5/N,P\V2 @  1 @  !4              ( !Q@8  '1O;7HM,C R
M,C W,#5?9&5F+GAM;%!+ 0(4 Q0    ( .1#Y52GY?6U#@8  '<W   5
M          "  8L)  !T;VUZ+3(P,C(P-S U7VQA8BYX;6Q02P$"% ,4
M" #D0^54HGX"[H4$   "(P  %0              @ ',#P  =&]M>BTR,#(R
M,#<P-5]P<F4N>&UL4$L! A0#%     @ Y$/E5(WS83H"$P  OV\   L
M         ( !A!0  '1O;7I?.&LN:'1M4$L! A0#%     @ Y$/E5(,'I%'@
M"0  3QL   X              ( !KR<  '1O;7I?97@Y.3$N:'1M4$L%!@
0   '  < P $  +LQ      $!

end
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
