2023 Q2 Form 10-Q Financial Statement

#000165495423006555 Filed on May 15, 2023

View on sec.gov

Income Statement

Concept 2023 Q2 2023 Q1 2022 Q1
Revenue $2.775M $1.582M $2.309M
YoY Change 90.26% -31.47% 11.34%
Cost Of Revenue $1.074M $640.9K $887.9K
YoY Change 100.04% -27.81% 5.92%
Gross Profit $1.700M $941.2K $1.421M
YoY Change 84.55% -33.75% 15.02%
Gross Profit Margin 61.28% 59.49% 61.54%
Selling, General & Admin $1.444M $1.895M $1.898M
YoY Change -7.55% -0.17% -19.58%
% of Gross Profit 84.95% 201.29% 133.59%
Research & Development $73.73K $70.52K $37.08K
YoY Change -25.79% 90.2% -81.05%
% of Gross Profit 4.34% 7.49% 2.61%
Depreciation & Amortization $86.77K $85.00K $92.77K
YoY Change 9.66% -8.37% 14.49%
% of Gross Profit 5.1% 9.03% 6.53%
Operating Expenses $1.789M $2.129M $2.081M
YoY Change 0.29% 2.35% -24.22%
Operating Profit -$88.94K -$1.188M -$659.8K
YoY Change -89.69% 80.07% -56.31%
Interest Expense $350.00 $660.00 $0.00
YoY Change -100.0%
% of Operating Profit
Other Income/Expense, Net $349.00 $659.00 $343.00
YoY Change 4.18% 92.13% -156.41%
Pretax Income -$88.59K -$1.187M -$659.5K
YoY Change -89.73% 80.06% -56.35%
Income Tax $0.00 $0.00 $0.00
% Of Pretax Income
Net Earnings -$88.59K -$1.187M -$659.5K
YoY Change -89.73% 80.06% -56.35%
Net Earnings / Revenue -3.19% -75.05% -28.57%
Basic Earnings Per Share $0.00 -$0.06 -$0.03
Diluted Earnings Per Share $0.00 -$0.06 -$0.03
COMMON SHARES
Basic Shares Outstanding 19.82M shares 19.82M shares 19.72M shares
Diluted Shares Outstanding 19.82M shares 19.81M shares 19.72M shares

Balance Sheet

Concept 2023 Q2 2023 Q1 2022 Q1
SHORT-TERM ASSETS
Cash & Short-Term Investments $1.574M $2.469M $5.330M
YoY Change -67.21% -53.68% 34.95%
Cash & Equivalents $1.574M $2.469M $5.330M
Short-Term Investments
Other Short-Term Assets $494.7K $520.7K $770.9K
YoY Change -26.47% -32.46% 64.02%
Inventory $4.413M $4.353M $5.100M
Prepaid Expenses $291.2K $413.0K $456.1K
Receivables $3.379M $2.491M $2.500M
Other Receivables $164.2K $164.2K $164.2K
Total Short-Term Assets $10.02M $10.40M $13.87M
YoY Change -18.88% -24.96% 7.32%
LONG-TERM ASSETS
Property, Plant & Equipment $1.238M $1.275M $1.414M
YoY Change -9.1% -9.84% -23.99%
Goodwill
YoY Change
Intangibles $1.819M $1.022M $953.0K
YoY Change 3.3% 7.23%
Long-Term Investments
YoY Change
Other Assets $565.5K $520.7K $390.5K
YoY Change 36.86% 33.32% -24.89%
Total Long-Term Assets $3.321M $3.332M $3.328M
YoY Change 0.29% 0.12% 6.31%
TOTAL ASSETS
Total Short-Term Assets $10.02M $10.40M $13.87M
Total Long-Term Assets $3.321M $3.332M $3.328M
Total Assets $13.35M $13.74M $17.19M
YoY Change -14.83% -20.11% 7.13%
SHORT-TERM LIABILITIES
YoY Change
Accounts Payable $1.360M $1.281M $1.814M
YoY Change 35.66% -29.36% -11.5%
Accrued Expenses $755.5K $635.0K $647.7K
YoY Change -8.27% -1.95% 1.2%
Deferred Revenue
YoY Change
Short-Term Debt $0.00 $0.00 $0.00
YoY Change
Long-Term Debt Due
YoY Change
Total Short-Term Liabilities $2.262M $2.535M $3.069M
YoY Change -7.03% -17.4% 9.99%
LONG-TERM LIABILITIES
Long-Term Debt $0.00 $0.00 $0.00
YoY Change -100.0%
Other Long-Term Liabilities $702.0K $730.9K $837.2K
YoY Change -13.47% -12.69% -9.98%
Total Long-Term Liabilities $702.0K $730.9K $837.2K
YoY Change -13.47% -12.69% -37.53%
TOTAL LIABILITIES
Total Short-Term Liabilities $2.262M $2.535M $3.069M
Total Long-Term Liabilities $702.0K $730.9K $837.2K
Total Liabilities $2.964M $3.266M $3.906M
YoY Change -8.64% -16.39% -5.42%
SHAREHOLDERS EQUITY
Retained Earnings -$47.70M -$47.61M -$44.20M
YoY Change 5.85% 7.71%
Common Stock $198.2K $198.2K $197.3K
YoY Change 0.46% 0.46%
Preferred Stock
YoY Change
Treasury Stock (at cost)
YoY Change
Treasury Stock Shares
Shareholders Equity $10.38M $10.47M $13.29M
YoY Change
Total Liabilities & Shareholders Equity $13.35M $13.74M $17.19M
YoY Change -14.83% -20.11% 7.13%

Cashflow Statement

Concept 2023 Q2 2023 Q1 2022 Q1
OPERATING ACTIVITIES
Net Income -$88.59K -$1.187M -$659.5K
YoY Change -89.73% 80.06% -56.35%
Depreciation, Depletion And Amortization $86.77K $85.00K $92.77K
YoY Change 9.66% -8.37% 14.49%
Cash From Operating Activities -$835.0K -$1.363M $27.31K
YoY Change 74.59% -5091.93% -102.23%
INVESTING ACTIVITIES
Capital Expenditures $60.21K $34.09K -$14.28K
YoY Change -216.24% -338.7% -52.4%
Acquisitions
YoY Change
Other Investing Activities
YoY Change
Cash From Investing Activities -$60.21K -$34.09K -$14.28K
YoY Change 16.24% 138.68% -49.37%
FINANCING ACTIVITIES
Cash Dividend Paid
YoY Change
Common Stock Issuance & Retirement, Net
YoY Change
Debt Paid & Issued, Net
YoY Change
Cash From Financing Activities $0.00 $0.00
YoY Change
NET CHANGE
Cash From Operating Activities -835.0K -$1.363M $27.31K
Cash From Investing Activities -60.21K -$34.09K -$14.28K
Cash From Financing Activities $0.00 $0.00
Net Change In Cash -895.2K -$1.397M $13.03K
YoY Change 68.89% -10824.74% -101.04%
FREE CASH FLOW
Cash From Operating Activities -$835.0K -$1.363M $27.31K
Capital Expenditures $60.21K $34.09K -$14.28K
Free Cash Flow -$895.2K -$1.397M $41.59K
YoY Change 109.92% -3459.94% -103.48%

Facts In Submission

Frame Concept Type Concept / XBRL Key Value Unit
CY2023Q1 us-gaap Common Stock Shares Authorized
CommonStockSharesAuthorized
250000000 shares
CY2023Q1 tomz Diluted
Diluted
-0.06
CY2022Q1 tomz Basic
Basic
-0.03
CY2023Q1 dei Document Quarterly Report
DocumentQuarterlyReport
true
CY2023Q1 dei Document Period End Date
DocumentPeriodEndDate
2023-03-31
CY2023Q1 dei Document Transition Report
DocumentTransitionReport
false
CY2023Q1 dei Entity File Number
EntityFileNumber
000-09908
CY2023Q1 dei Entity Registrant Name
EntityRegistrantName
TOMI ENVIRONMENTAL SOLUTIONS, INC.
CY2023Q1 dei Entity Incorporation State Country Code
EntityIncorporationStateCountryCode
FL
CY2023Q1 dei Entity Tax Identification Number
EntityTaxIdentificationNumber
59-1947988
CY2023Q1 dei Entity Address Address Line1
EntityAddressAddressLine1
8430 Spires Way
CY2023Q1 dei Entity Address City Or Town
EntityAddressCityOrTown
Frederick
CY2023Q1 dei Entity Address State Or Province
EntityAddressStateOrProvince
MD
CY2023Q1 dei Entity Address Postal Zip Code
EntityAddressPostalZipCode
21701
CY2023Q1 dei City Area Code
CityAreaCode
800
CY2023Q1 dei Local Phone Number
LocalPhoneNumber
525-1698
CY2023Q1 dei Security12b Title
Security12bTitle
Common stock, par value $0.01 per share
CY2023Q1 dei Trading Symbol
TradingSymbol
TOMZ
CY2023Q1 dei Security Exchange Name
SecurityExchangeName
NASDAQ
CY2023Q1 dei Entity Current Reporting Status
EntityCurrentReportingStatus
Yes
CY2023Q1 dei Entity Interactive Data Current
EntityInteractiveDataCurrent
Yes
CY2023Q1 dei Entity Filer Category
EntityFilerCategory
Non-accelerated Filer
CY2023Q1 dei Entity Small Business
EntitySmallBusiness
true
CY2023Q1 dei Entity Emerging Growth Company
EntityEmergingGrowthCompany
false
CY2023Q1 dei Entity Shell Company
EntityShellCompany
false
CY2023Q2 dei Entity Common Stock Shares Outstanding
EntityCommonStockSharesOutstanding
19823955 shares
CY2023Q1 us-gaap Cash Equivalents At Carrying Value
CashEquivalentsAtCarryingValue
2469300 usd
CY2023Q1 us-gaap Inventory Net
InventoryNet
4353458 usd
CY2022Q4 us-gaap Inventory Net
InventoryNet
4495999 usd
CY2023Q1 dei Entity Central Index Key
EntityCentralIndexKey
0000314227
CY2023Q1 dei Amendment Flag
AmendmentFlag
false
CY2023Q1 dei Current Fiscal Year End Date
CurrentFiscalYearEndDate
--12-31
CY2023Q1 dei Document Fiscal Period Focus
DocumentFiscalPeriodFocus
Q1
CY2023Q1 dei Document Fiscal Year Focus
DocumentFiscalYearFocus
2023
CY2022Q4 us-gaap Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
0.01
CY2022Q4 us-gaap Common Stock Shares Authorized
CommonStockSharesAuthorized
250000000 shares
CY2023Q1 us-gaap Common Stock Shares Outstanding
CommonStockSharesOutstanding
19763955 shares
CY2022Q4 us-gaap Common Stock Shares Outstanding
CommonStockSharesOutstanding
16761513 shares
CY2022 us-gaap Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
0 usd
CY2022Q4 us-gaap Allowance For Doubtful Accounts Receivable
AllowanceForDoubtfulAccountsReceivable
1678000 usd
CY2023Q1 us-gaap Other Assets Current
OtherAssetsCurrent
520684 usd
CY2022Q1 tomz Amortization Of Tenant Improvement Allowance
AmortizationOfTenantImprovementAllowance
9798 usd
CY2023Q1 dei Document Type
DocumentType
10-Q
CY2022Q4 us-gaap Other Assets Current
OtherAssetsCurrent
475103 usd
CY2023Q1 us-gaap Deferred Revenue
DeferredRevenue
618490 usd
CY2022Q4 us-gaap Deferred Revenue
DeferredRevenue
699732 usd
CY2023Q1 us-gaap Liabilities Noncurrent
LiabilitiesNoncurrent
730928 usd
CY2022Q4 us-gaap Liabilities Noncurrent
LiabilitiesNoncurrent
761132 usd
CY2023Q1 us-gaap Liabilities
Liabilities
3265890 usd
CY2022Q4 us-gaap Liabilities
Liabilities
4051599 usd
CY2023Q1 us-gaap Commitments And Contingencies
CommitmentsAndContingencies
0 usd
CY2022Q4 us-gaap Commitments And Contingencies
CommitmentsAndContingencies
0 usd
CY2023Q1 us-gaap Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
0.01
CY2023Q1 us-gaap Common Stock Shares Issued
CommonStockSharesIssued
19763955 shares
CY2022Q4 us-gaap Common Stock Shares Issued
CommonStockSharesIssued
16761513 shares
CY2023Q1 us-gaap Common Stock Value
CommonStockValue
198240 usd
CY2022Q4 us-gaap Common Stock Value
CommonStockValue
197640 usd
CY2023Q1 us-gaap Additional Paid In Capital
AdditionalPaidInCapital
57882792 usd
CY2022Q4 us-gaap Additional Paid In Capital
AdditionalPaidInCapital
57673559 usd
CY2023Q1 us-gaap Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
-47611124 usd
CY2022Q4 us-gaap Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
-46423637 usd
CY2023Q1 us-gaap Stockholders Equity
StockholdersEquity
10470546 usd
CY2022Q4 us-gaap Stockholders Equity
StockholdersEquity
11448200 usd
CY2023Q1 us-gaap Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
13736436 usd
CY2022Q4 us-gaap Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
15499799 usd
CY2023Q1 us-gaap Revenues
Revenues
1582172 usd
CY2022Q1 us-gaap Revenues
Revenues
2308584 usd
CY2023Q1 us-gaap Cost Of Revenue
CostOfRevenue
640935 usd
CY2022Q1 us-gaap Cost Of Revenue
CostOfRevenue
887889 usd
CY2023Q1 us-gaap Gross Profit
GrossProfit
941237 usd
CY2022Q1 us-gaap Gross Profit
GrossProfit
1420695 usd
CY2023Q1 us-gaap Professional Fees
ProfessionalFees
137185 usd
CY2022Q1 us-gaap Professional Fees
ProfessionalFees
190530 usd
CY2023Q1 us-gaap Depreciation And Amortization
DepreciationAndAmortization
88776 usd
CY2022Q1 us-gaap Depreciation And Amortization
DepreciationAndAmortization
82292 usd
CY2023Q1 us-gaap Selling Expense
SellingExpense
376653 usd
CY2022Q1 us-gaap Selling Expense
SellingExpense
340789 usd
CY2023Q1 us-gaap Research And Development Expense
ResearchAndDevelopmentExpense
70520 usd
CY2022Q1 us-gaap Research And Development Expense
ResearchAndDevelopmentExpense
37076 usd
CY2023Q1 tomz Consulting Fees
ConsultingFees
75455 usd
CY2022Q1 tomz Consulting Fees
ConsultingFees
63210 usd
CY2023Q1 us-gaap Other General And Administrative Expense
OtherGeneralAndAdministrativeExpense
1380794 usd
CY2022Q1 us-gaap Other General And Administrative Expense
OtherGeneralAndAdministrativeExpense
1366625 usd
CY2023Q1 us-gaap Operating Expenses
OperatingExpenses
2129383 usd
CY2022Q1 us-gaap Operating Expenses
OperatingExpenses
2080522 usd
CY2023Q1 us-gaap Operating Income Loss
OperatingIncomeLoss
-1188146 usd
CY2022Q1 us-gaap Operating Income Loss
OperatingIncomeLoss
-659827 usd
CY2023Q1 us-gaap Interest Income Other
InterestIncomeOther
659 usd
CY2022Q1 us-gaap Interest Income Other
InterestIncomeOther
343 usd
CY2023Q1 us-gaap Nonoperating Income Expense
NonoperatingIncomeExpense
659 usd
CY2022Q1 us-gaap Nonoperating Income Expense
NonoperatingIncomeExpense
343 usd
CY2023Q1 us-gaap Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
-1187487 usd
CY2022Q1 us-gaap Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
-659484 usd
CY2023Q1 us-gaap Income Tax Expense Benefit
IncomeTaxExpenseBenefit
0 usd
CY2022Q1 us-gaap Income Tax Expense Benefit
IncomeTaxExpenseBenefit
0 usd
CY2023Q1 us-gaap Net Income Loss
NetIncomeLoss
-1187487 usd
CY2022Q1 us-gaap Net Income Loss
NetIncomeLoss
-659484 usd
CY2023Q1 us-gaap Earnings Per Share Basic
EarningsPerShareBasic
-0.06
CY2022Q1 us-gaap Earnings Per Share Basic
EarningsPerShareBasic
-0.03
CY2023Q1 us-gaap Earnings Per Share Diluted
EarningsPerShareDiluted
-0.06
CY2022Q1 us-gaap Earnings Per Share Diluted
EarningsPerShareDiluted
-0.03
CY2023Q1 us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
19806622 shares
CY2022Q1 us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
19718330 shares
CY2023Q1 us-gaap Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
19806622 shares
CY2022Q1 us-gaap Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
19718330 shares
CY2022Q4 us-gaap Stockholders Equity
StockholdersEquity
11448200 usd
CY2023Q1 tomz Equity Compensation
EquityCompensation
158833 usd
CY2023Q1 tomz Common Stock Issued For Services Provided Amount
CommonStockIssuedForServicesProvidedAmount
51000 usd
CY2023Q1 us-gaap Net Income Loss
NetIncomeLoss
-1187487 usd
CY2023Q1 us-gaap Stockholders Equity
StockholdersEquity
10470546 usd
CY2021Q4 us-gaap Stockholders Equity
StockholdersEquity
13595080 usd
CY2022Q1 tomz Equity Compensation
EquityCompensation
297766 usd
CY2022Q1 tomz Common Stock Issued For Services Provided Amount
CommonStockIssuedForServicesProvidedAmount
54338 usd
CY2022Q1 us-gaap Net Income Loss
NetIncomeLoss
-659484 usd
CY2023Q1 us-gaap Net Income Loss
NetIncomeLoss
-1187487 usd
CY2023Q1 us-gaap Depreciation And Amortization
DepreciationAndAmortization
88776 usd
CY2022Q1 us-gaap Depreciation And Amortization
DepreciationAndAmortization
82292 usd
CY2023Q1 us-gaap Operating Lease Right Of Use Asset Amortization Expense
OperatingLeaseRightOfUseAssetAmortizationExpense
39329 usd
CY2022Q1 us-gaap Operating Lease Right Of Use Asset Amortization Expense
OperatingLeaseRightOfUseAssetAmortizationExpense
39329 usd
CY2023Q1 us-gaap Capitalized Computer Software Amortization1
CapitalizedComputerSoftwareAmortization1
0 usd
CY2022Q1 us-gaap Capitalized Computer Software Amortization1
CapitalizedComputerSoftwareAmortization1
10476 usd
CY2023Q1 tomz Equity Compensation Expense
EquityCompensationExpense
158833 usd
CY2022Q1 tomz Equity Compensation Expense
EquityCompensationExpense
297766 usd
CY2023Q1 tomz Value Of Equity Issued For Services
ValueOfEquityIssuedForServices
51000 usd
CY2022Q1 tomz Value Of Equity Issued For Services
ValueOfEquityIssuedForServices
54338 usd
CY2023Q1 us-gaap Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
281653 usd
CY2022Q1 us-gaap Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
-535632 usd
CY2023Q1 us-gaap Increase Decrease In Inventories
IncreaseDecreaseInInventories
142541 usd
CY2022Q1 us-gaap Increase Decrease In Inventories
IncreaseDecreaseInInventories
-356815 usd
CY2023Q1 us-gaap Increase Decrease In Prepaid Expense
IncreaseDecreaseInPrepaidExpense
-24616 usd
CY2022Q1 us-gaap Increase Decrease In Prepaid Expense
IncreaseDecreaseInPrepaidExpense
-112485 usd
CY2023Q1 tomz Increase Decrease Vendor Deposits
IncreaseDecreaseVendorDeposits
-67151 usd
CY2022Q1 tomz Increase Decrease Vendor Deposits
IncreaseDecreaseVendorDeposits
-26250 usd
CY2023Q1 us-gaap Increase Decrease In Other Receivables
IncreaseDecreaseInOtherReceivables
0 usd
CY2022Q1 us-gaap Increase Decrease In Other Receivables
IncreaseDecreaseInOtherReceivables
71754 usd
CY2023Q1 us-gaap Increase Decrease In Other Operating Assets
IncreaseDecreaseInOtherOperatingAssets
-45581 usd
CY2022Q1 us-gaap Increase Decrease In Other Operating Assets
IncreaseDecreaseInOtherOperatingAssets
-49543 usd
CY2023Q1 us-gaap Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
-518441 usd
CY2022Q1 us-gaap Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
760113 usd
CY2023Q1 us-gaap Increase Decrease In Accrued Liabilities
IncreaseDecreaseInAccruedLiabilities
-161769 usd
CY2023Q1 us-gaap Lessee Operating Lease Discount Rate
LesseeOperatingLeaseDiscountRate
0.0700 pure
CY2022Q1 us-gaap Increase Decrease In Accrued Liabilities
IncreaseDecreaseInAccruedLiabilities
-111482 usd
CY2023Q1 us-gaap Increase Decrease In Customer Deposits
IncreaseDecreaseInCustomerDeposits
-81243 usd
CY2022Q1 us-gaap Increase Decrease In Customer Deposits
IncreaseDecreaseInCustomerDeposits
600984 usd
CY2023Q1 tomz Increase Decrease In Lease Liabilities
IncreaseDecreaseInLeaseLiabilities
-39192 usd
CY2022Q1 tomz Increase Decrease In Lease Liabilities
IncreaseDecreaseInLeaseLiabilities
-38049 usd
CY2023Q1 us-gaap Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
-1363347 usd
CY2022Q1 us-gaap Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
27311 usd
CY2023Q1 us-gaap Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
34086 usd
CY2022Q1 us-gaap Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
14281 usd
CY2023Q1 us-gaap Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
-34086 usd
CY2022Q1 us-gaap Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
-14281 usd
CY2023Q1 us-gaap Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
-1397433 usd
CY2022Q1 us-gaap Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
13030 usd
CY2022Q4 us-gaap Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
3866733 usd
CY2021Q4 us-gaap Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
5317443 usd
CY2023Q1 us-gaap Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
2469300 usd
CY2022Q1 us-gaap Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
5330473 usd
CY2023Q1 us-gaap Income Taxes Paid
IncomeTaxesPaid
0 usd
CY2022Q1 us-gaap Income Taxes Paid
IncomeTaxesPaid
72086 usd
CY2023Q1 us-gaap Prior Period Reclassification Adjustment Description
PriorPeriodReclassificationAdjustmentDescription
<p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Certain reclassifications have been made to prior-year comparative financial statements to conform to the current year presentation. These reclassifications had no material effect on previously reported results of operations or financial position.</p>
CY2023Q1 us-gaap Use Of Estimates
UseOfEstimates
<p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The preparation of the condensed consolidated financial statements in conformity with GAAP requires us to make estimates and assumptions that affect the amounts reported and disclosed in the accompanying consolidated financial statements and the accompanying notes. Actual results could differ materially from these estimates. On an ongoing basis, we evaluate our estimates, including those related to accounts receivable, inventory, fair values of financial instruments, intangible assets, useful lives of intangible assets and property and equipment, fair values of stock-based awards, income taxes, and contingent liabilities, among others. We base our estimates on historical experience and on various other assumptions that are believed to be reasonable, the results of which form the basis for making judgments about the carrying values of our assets and liabilities.</p>
CY2023Q1 us-gaap Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
54000 usd
CY2023Q1 us-gaap Allowance For Doubtful Accounts Receivable
AllowanceForDoubtfulAccountsReceivable
1678000 usd
CY2023Q1 us-gaap Inventory Valuation Reserves
InventoryValuationReserves
95000 usd
CY2023Q1 us-gaap Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Warranty Reserves
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves
30000 usd
CY2022Q4 us-gaap Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Warranty Reserves
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves
68000 usd
CY2023Q1 tomz Common Stock Issuable Upon Conversion Of Outstanding Shares
CommonStockIssuableUponConversionOfOutstandingShares
63750 shares
CY2022Q1 tomz Common Stock Issuable Upon Conversion Of Outstanding Shares
CommonStockIssuableUponConversionOfOutstandingShares
63750 shares
CY2023Q1 tomz Net Loss Attributable To Common Shareholders
NetLossAttributableToCommonShareholders
-1187487 usd
CY2022Q1 tomz Net Loss Attributable To Common Shareholders
NetLossAttributableToCommonShareholders
-659484 usd
CY2023Q1 us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
19806622 shares
CY2022Q1 us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
19718330 shares
CY2023Q1 us-gaap Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
19806622 shares
CY2022Q1 us-gaap Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
19718330 shares
CY2023Q1 tomz Basic
Basic
-0.06
CY2022Q1 tomz Diluted
Diluted
-0.03
CY2023Q1 us-gaap Deposits
Deposits
514203 usd
CY2023Q1 tomz Schedule Of Reconciliation Of Shares
ScheduleOfReconciliationOfShares
<table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>For the Three Months Ended March 31,</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>(Unaudited)</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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:justify;">Numerator:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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 0px 0px 15px; text-align:justify;">Net Income (Loss)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">(1,187,487</td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">(659,484</td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</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; text-align:justify;">Denominator:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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 0px 0px 15px; text-align:justify;">Basic weighted-average shares</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">19,806,622</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">19,718,330</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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; text-align:justify;">Effect of dilutive securities</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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 0px 0px 15px; text-align:justify;">Warrants</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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 0px 0px 15px; text-align:justify;">Options</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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 0px 0px 15px; text-align:justify;">Preferred Stock</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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; text-align:justify;">Diluted Weighted Average Shares</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">19,806,622</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">19,718,330</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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; text-align:justify;">Net Income (Loss) Per Common Share:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </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; text-align:justify;">Basic</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">(0.06</td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">(0.03</td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</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; text-align:justify;">Diluted</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">(0.06</td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">(0.03</td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td colspan="9" style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Note: Warrants, options and preferred stock for the three months ended March 31, 2023 and 2022 are not included in the computation of diluted weighted average shares as such inclusion would be anti-dilutive.</p></td></tr></tbody></table>
CY2023Q1 us-gaap Net Income Loss
NetIncomeLoss
-1187487 usd
CY2022Q1 us-gaap Net Income Loss
NetIncomeLoss
-659484 usd
CY2023Q1 us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
19806622 shares
CY2022Q1 us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
19718330 shares
CY2023Q1 tomz Weighted Average Number Of Diluted Share Outstanding1
WeightedAverageNumberOfDilutedShareOutstanding1
19806622 shares
CY2022Q1 tomz Weighted Average Number Of Diluted Share Outstanding1
WeightedAverageNumberOfDilutedShareOutstanding1
19718330 shares
CY2023Q1 us-gaap Earnings Per Share Basic
EarningsPerShareBasic
-0.06
CY2022Q1 us-gaap Earnings Per Share Basic
EarningsPerShareBasic
-0.03
CY2023Q1 us-gaap Earnings Per Share Diluted
EarningsPerShareDiluted
-0.06
CY2022Q1 us-gaap Earnings Per Share Diluted
EarningsPerShareDiluted
-0.03
CY2023Q1 us-gaap Concentration Risk Credit Risk
ConcentrationRiskCreditRisk
<p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;">Financial instruments that potentially subject us to significant concentrations of credit risk consist principally of cash and cash equivalents. We maintain cash balances at financial institutions which exceed the current Federal Deposit Insurance Corporation limit of $250,000 at times during the year.</p>
CY2023Q1 us-gaap Federal Deposit Insurance Corporation Premium Expense
FederalDepositInsuranceCorporationPremiumExpense
250000 usd
CY2023Q1 tomz Longlived Assets Including Acquired Intangible Assets
LonglivedAssetsIncludingAcquiredIntangibleAssets
<p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;">We assess long-lived assets for potential impairments at the end of each year, or during the year if an event or other circumstance indicates that we may not be able to recover the carrying amount of the asset. In evaluating long-lived assets for impairment, we measure recoverability of these assets by comparing the carrying amounts to the future undiscounted cash flows the assets are expected to generate. If our long-lived assets are considered to be impaired, the impairment to be recognized equals the amount by which the carrying value of the asset exceeds its fair market value. We base the calculations of the estimated fair value of our long-lived assets on the income approach. For the income approach, we use an internally developed discounted cash flow model that includes, among others, the following assumptions: projections of revenues and expenses and related cash flows based on assumed long-term growth rates and demand trends; expected future investments to grow new units; and estimated discount rates. We base these assumptions on our historical data and experience, industry projections, micro and macro general economic condition projections, and our expectations. We had no long-lived asset impairment charges for the three months ended March 31, 2023 and 2022.</p>
CY2023Q1 us-gaap Advertising Expense
AdvertisingExpense
197000 usd
CY2022Q1 us-gaap Advertising Expense
AdvertisingExpense
194000 usd
CY2023Q1 tomz Research And Developments Expense
ResearchAndDevelopmentsExpense
71000 usd
CY2022Q1 tomz Research And Developments Expense
ResearchAndDevelopmentsExpense
37000 usd
CY2023Q1 us-gaap Inventory Finished Goods
InventoryFinishedGoods
3806603 usd
CY2022Q4 us-gaap Inventory Finished Goods
InventoryFinishedGoods
3929000 usd
CY2023Q1 us-gaap Inventory Raw Materials
InventoryRawMaterials
644855 usd
CY2022Q4 us-gaap Inventory Raw Materials
InventoryRawMaterials
691999 usd
CY2023Q1 us-gaap Inventory Valuation Reserves
InventoryValuationReserves
95000 usd
CY2022Q4 us-gaap Inventory Valuation Reserves
InventoryValuationReserves
95000 usd
CY2023Q1 us-gaap Inventory Net
InventoryNet
4353458 usd
CY2022Q4 us-gaap Inventory Net
InventoryNet
4495999 usd
CY2022Q4 us-gaap Deposits
Deposits
447052 usd
CY2022Q4 us-gaap Furniture And Fixtures Gross
FurnitureAndFixturesGross
364819 usd
CY2023Q1 us-gaap Furniture And Fixtures Gross
FurnitureAndFixturesGross
364819 usd
CY2023Q1 tomz Equipments
Equipments
2250310 usd
CY2022Q4 tomz Equipments
Equipments
2236510 usd
CY2022Q4 us-gaap Public Utilities Property Plant And Equipment Vehicles
PublicUtilitiesPropertyPlantAndEquipmentVehicles
60703 usd
CY2023Q1 us-gaap Public Utilities Property Plant And Equipment Vehicles
PublicUtilitiesPropertyPlantAndEquipmentVehicles
60703 usd
CY2023Q1 tomz Computer Software
ComputerSoftware
266925 usd
CY2022Q4 tomz Computer Software
ComputerSoftware
246638 usd
CY2022Q4 us-gaap Leasehold Improvements Gross
LeaseholdImprovementsGross
393381 usd
CY2023Q1 us-gaap Leasehold Improvements Gross
LeaseholdImprovementsGross
393381 usd
CY2022Q4 us-gaap Construction In Progress Gross
ConstructionInProgressGross
405000 usd
CY2023Q1 us-gaap Construction In Progress Gross
ConstructionInProgressGross
405000 usd
CY2023Q1 us-gaap Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
3741138 usd
CY2022Q4 us-gaap Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
3707051 usd
CY2023Q1 us-gaap Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
2466521 usd
CY2022Q4 us-gaap Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
2371720 usd
CY2023Q1 us-gaap Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
1274617 usd
CY2022Q4 us-gaap Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
1335331 usd
CY2023Q1 us-gaap Depreciation
Depreciation
85003 usd
CY2022Q1 us-gaap Depreciation
Depreciation
79050 usd
CY2023Q1 tomz Amortization Of Tenant Improvement Allowance
AmortizationOfTenantImprovementAllowance
9798 usd
CY2022Q1 us-gaap Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
3242 usd
CY2022Q4 us-gaap Finite Lived Intangible Assets Gross
FiniteLivedIntangibleAssetsGross
3108063 usd
CY2023Q1 us-gaap Finite Lived Intangible Assets Gross
FiniteLivedIntangibleAssetsGross
3108063 usd
CY2023Q1 us-gaap Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
2886666 usd
CY2022Q4 us-gaap Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
2882892 usd
CY2023Q1 tomz Intangible Assets Net
IntangibleAssetsNet
221397 usd
CY2022Q4 tomz Intangible Assets Net
IntangibleAssetsNet
225171 usd
CY2023Q1 us-gaap Indefinite Lived Trademarks
IndefiniteLivedTrademarks
800565 usd
CY2022Q4 us-gaap Indefinite Lived Trademarks
IndefiniteLivedTrademarks
800565 usd
CY2023Q1 us-gaap Intangible Assets Net Excluding Goodwill
IntangibleAssetsNetExcludingGoodwill
1021962 usd
CY2022Q4 us-gaap Intangible Assets Net Excluding Goodwill
IntangibleAssetsNetExcludingGoodwill
1025736 usd
CY2023Q1 us-gaap Finite Lived Intangible Assets Amortization Expense Next Twelve Months
FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
2800 usd
CY2023Q1 us-gaap Finite Lived Intangible Assets Amortization Expense Year Two
FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
15000 usd
CY2023Q1 us-gaap Finite Lived Intangible Assets Amortization Expense Year Three
FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
15000 usd
CY2023Q1 us-gaap Finite Lived Intangible Assets Amortization Expense Year Four
FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
15000 usd
CY2023Q1 us-gaap Finite Lived Intangible Assets Amortization Expense Year Five
FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
15000 usd
CY2023Q1 us-gaap Finite Lived Intangible Assets Amortization Expense After Year Five
FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive
158600 usd
CY2023Q1 us-gaap Finite Lived Intangible Assets Net
FiniteLivedIntangibleAssetsNet
221400 usd
CY2023Q1 tomz Term Lease
TermLease
P10Y
CY2018Q2 us-gaap Area Of Land
AreaOfLand
9000 sqft
CY2018Q2 us-gaap Operating Leases Rent Expense Net
OperatingLeasesRentExpenseNet
143460 usd
CY2018Q2 tomz Maximum Increases Rent Percentage
MaximumIncreasesRentPercentage
0.03 pure
CY2018Q2 us-gaap Payments For Proceeds From Tenant Allowance
PaymentsForProceedsFromTenantAllowance
405000 usd
CY2018Q2 us-gaap Workers Compensation Discount Percent
WorkersCompensationDiscountPercent
0.07 pure
CY2023Q1 us-gaap Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
514400 usd
CY2022Q4 us-gaap Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
528996 usd
CY2023Q1 us-gaap Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
106230 usd
CY2022Q4 us-gaap Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
100282 usd
CY2023Q1 us-gaap Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
730928 usd
CY2022Q4 us-gaap Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
761132 usd
CY2023Q1 us-gaap Operating Lease Liability
OperatingLeaseLiability
837158 usd
CY2022Q4 us-gaap Operating Lease Liability
OperatingLeaseLiability
861414 usd
CY2023Q1 us-gaap Operating Lease Expense
OperatingLeaseExpense
39329 usd
CY2022Q1 us-gaap Operating Lease Expense
OperatingLeaseExpense
39329 usd
CY2022Q4 us-gaap Lessee Operating Lease Discount Rate
LesseeOperatingLeaseDiscountRate
0.0700 pure
CY2023Q1 tomz Operating Lease Weighted Averages Remaining Lease Term
OperatingLeaseWeightedAveragesRemainingLeaseTerm
5.75
CY2022 tomz Operating Lease Weighted Averages Remaining Lease Term
OperatingLeaseWeightedAveragesRemainingLeaseTerm
6.00
CY2023Q1 us-gaap Operating Lease Initial Direct Cost Expense Over Term
OperatingLeaseInitialDirectCostExpenseOverTerm
39191 usd
CY2022Q1 us-gaap Operating Lease Initial Direct Cost Expense Over Term
OperatingLeaseInitialDirectCostExpenseOverTerm
38049 usd
CY2023Q1 us-gaap Lessee Operating Lease Liability Payments Due Next Twelve Months
LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
121099 usd
CY2023Q1 us-gaap Lessee Operating Lease Liability Payments Due Year Two
LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
165098 usd
CY2023Q1 us-gaap Lessee Operating Lease Liability Payments Due Year Three
LesseeOperatingLeaseLiabilityPaymentsDueYearThree
170051 usd
CY2023Q1 us-gaap Lessee Operating Lease Liability Payments Due Year Four
LesseeOperatingLeaseLiabilityPaymentsDueYearFour
175153 usd
CY2023Q1 us-gaap Lessee Operating Lease Liability Payments Due Year Five
LesseeOperatingLeaseLiabilityPaymentsDueYearFive
180408 usd
CY2023Q1 us-gaap Lessee Operating Lease Liability Payments Due After Year Five
LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
219571 usd
CY2023Q1 us-gaap Lessee Operating Lease Liability Payments Due
LesseeOperatingLeaseLiabilityPaymentsDue
1031380 usd
CY2023Q1 us-gaap Lessee Operating Lease Liability Undiscounted Excess Amount
LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
194222 usd
CY2023Q1 tomz Capital Lease Obligation Current
CapitalLeaseObligationCurrent
837158 usd
CY2023Q1 us-gaap Capitalized Computer Software Gross
CapitalizedComputerSoftwareGross
125704 usd
CY2022Q4 us-gaap Capitalized Computer Software Gross
CapitalizedComputerSoftwareGross
125704 usd
CY2023Q1 us-gaap Capitalized Computer Software Accumulated Amortization
CapitalizedComputerSoftwareAccumulatedAmortization
125704 usd
CY2022Q4 us-gaap Capitalized Computer Software Accumulated Amortization
CapitalizedComputerSoftwareAccumulatedAmortization
125704 usd
CY2023Q1 us-gaap Capitalized Computer Software Net
CapitalizedComputerSoftwareNet
0 usd
CY2022Q4 us-gaap Capitalized Computer Software Net
CapitalizedComputerSoftwareNet
0 usd
CY2023Q1 tomz Amortization Of Capitalized Software Development Costs
AmortizationOfCapitalizedSoftwareDevelopmentCosts
0 usd
CY2022Q1 tomz Amortization Of Capitalized Software Development Costs
AmortizationOfCapitalizedSoftwareDevelopmentCosts
10475 usd
CY2021Q2 tomz Proceeds From Service Contract Of Receivables
ProceedsFromServiceContractOfReceivables
30409 usd
CY2023Q1 tomz Annual Payments On Contract Term
AnnualPaymentsOnContractTerm
P5Y
CY2023Q1 us-gaap Prepaid Expense And Other Assets
PrepaidExpenseAndOtherAssets
66857 usd
CY2023Q1 us-gaap Cost Of Goods And Services Sold Amortization
CostOfGoodsAndServicesSoldAmortization
3766 usd
CY2022Q1 us-gaap Cost Of Goods And Services Sold Amortization
CostOfGoodsAndServicesSoldAmortization
4526 usd
CY2023Q1 us-gaap Common Unit Outstanding
CommonUnitOutstanding
610500 shares
CY2023Q1 tomz Sharebased Compensation Arrangement By Sharebased Payment Award Option Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionOutstandingWeightedAverageRemainingContractualTerm2
P7Y6M21D
CY2023Q1 us-gaap Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
610500 shares
CY2023Q1 tomz Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Weighted Average Exercise Prices
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrices
1.10
CY2023Q1 tomz Warrants Outstanding And Exercisable By Price Range
WarrantsOutstandingAndExercisableByPriceRange
<table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td colspan="6" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Outstanding Warrants</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;"/><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Exercisable Warrants</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px"><td colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Exercise Price</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Number</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Average Weighted</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Remaining Contractual</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Life in Years</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Number</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Weighted Average</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Exercise Price</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td style="width:15%;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:right;">0.64</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:15%;vertical-align:bottom;text-align:right;">31,250</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:15%;vertical-align:bottom;text-align:right;">10.65</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="width:15%;vertical-align:bottom;text-align:right;">31,250</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:15%;vertical-align:bottom;text-align:right;">0.64</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:bottom;white-space: nowrap;">$</td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:right;">0.80</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">125,000</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">10.89</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">125,000</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="vertical-align:bottom;text-align:right;">0.80</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:bottom;white-space: nowrap;">$</td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:right;">0.96</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">442,708</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">9.64</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">442,708</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="vertical-align:bottom;text-align:right;">0.96</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:bottom;white-space: nowrap;">$</td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:right;">1.12</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">6,250</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">1.05</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">6,250</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="vertical-align:bottom;text-align:right;">1.12</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:bottom;white-space: nowrap;">$</td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:right;">1.20</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">156,250</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">1.84</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">156,250</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="vertical-align:bottom;text-align:right;">1.20</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:bottom;white-space: nowrap;">$</td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:right;">1.68</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">1,434,721</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">3.50</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">1,434,721</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="vertical-align:bottom;text-align:right;">1.68</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:bottom;white-space: nowrap;">$</td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:right;">2.18</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">172,167</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">3.50</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">172,167</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="vertical-align:bottom;text-align:right;">2.18</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:bottom;white-space: nowrap;">$</td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:right;">4.00</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">28,750</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">7.07</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">28,750</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="vertical-align:bottom;text-align:right;">4.00</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:bottom;white-space: nowrap;">$</td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:right;">6.95</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">375,000</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">7.51</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">375,000</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="vertical-align:bottom;text-align:right;">6.95</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;white-space: nowrap;">$</td><td style="BORDER-BOTTOM: 1px solid;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:right;">8.40</p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:right;">1,489</td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:right;">0.39</td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:right;">1,489</td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:right;">8.40</td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;vertical-align:bottom;text-align:right;">2,773,585</td><td style="PADDING-BOTTOM: 3px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;vertical-align:bottom;text-align:right;">5.37</td><td style="PADDING-BOTTOM: 3px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;vertical-align:bottom;text-align:right;">2,773,585</td><td style="PADDING-BOTTOM: 3px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td><td style="BORDER-BOTTOM: 3px double;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;vertical-align:bottom;text-align:right;">2.26</td><td style="PADDING-BOTTOM: 3px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"> </p></td></tr></tbody></table>
CY2023Q1 us-gaap Class Of Warrant Or Right Outstanding
ClassOfWarrantOrRightOutstanding
2773585 shares
CY2023Q1 tomz Average Weighted Remaining Contractual Life In Years Warrants
AverageWeightedRemainingContractualLifeInYearsWarrants
P5Y4M13D
CY2023Q1 tomz Total Number Of Exercisable Warrants
TotalNumberOfExercisableWarrants
2773585 shares
CY2023Q1 us-gaap Class Of Warrant Or Right Exercise Price Of Warrants Or Rights1
ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
2.26
CY2023Q1 us-gaap Contractual Obligation Due In Second Year
ContractualObligationDueInSecondYear
30000 usd
CY2023Q1 us-gaap Contractual Obligation Due In Third Year
ContractualObligationDueInThirdYear
30000 usd
CY2023Q1 us-gaap Contractual Obligation Due In Fourth Year
ContractualObligationDueInFourthYear
0 usd
CY2023Q1 us-gaap Contractual Obligation
ContractualObligation
60000 usd
CY2023Q1 us-gaap Employee Related Liabilities Current And Noncurrent
EmployeeRelatedLiabilitiesCurrentAndNoncurrent
339587 usd
CY2022Q4 us-gaap Employee Related Liabilities Current And Noncurrent
EmployeeRelatedLiabilitiesCurrentAndNoncurrent
442805 usd
CY2023Q1 us-gaap Accrued Payroll Taxes Current And Noncurrent
AccruedPayrollTaxesCurrentAndNoncurrent
73000 usd
CY2022Q4 us-gaap Accrued Payroll Taxes Current And Noncurrent
AccruedPayrollTaxesCurrentAndNoncurrent
136000 usd
CY2023Q1 tomz Director Fees Current And Noncurrent
DirectorFeesCurrentAndNoncurrent
37650 usd
CY2022Q4 tomz Director Fees Current And Noncurrent
DirectorFeesCurrentAndNoncurrent
34650 usd
CY2023Q1 tomz Sales Tax Payable
SalesTaxPayable
2665 usd
CY2022Q4 tomz Sales Tax Payable
SalesTaxPayable
-1351 usd
CY2023Q1 us-gaap Extended Product Warranty Accrual Current
ExtendedProductWarrantyAccrualCurrent
30000 usd
CY2022Q4 us-gaap Extended Product Warranty Accrual Current
ExtendedProductWarrantyAccrualCurrent
68000 usd
CY2023Q1 us-gaap Other Accrued Liabilities Current And Noncurrent
OtherAccruedLiabilitiesCurrentAndNoncurrent
45898 usd
CY2022Q4 us-gaap Other Accrued Liabilities Current And Noncurrent
OtherAccruedLiabilitiesCurrentAndNoncurrent
48699 usd
CY2023Q1 us-gaap Accrued Liabilities And Other Liabilities
AccruedLiabilitiesAndOtherLiabilities
528800 usd
CY2022Q4 us-gaap Accrued Liabilities And Other Liabilities
AccruedLiabilitiesAndOtherLiabilities
728703 usd
CY2022Q4 us-gaap Extended Product Warranty Accrual
ExtendedProductWarrantyAccrual
68000 usd
CY2021Q4 us-gaap Extended Product Warranty Accrual
ExtendedProductWarrantyAccrual
68000 usd
CY2023Q1 us-gaap Product Warranty Accrual Period Increase Decrease
ProductWarrantyAccrualPeriodIncreaseDecrease
-28390 usd
CY2022 us-gaap Product Warranty Accrual Period Increase Decrease
ProductWarrantyAccrualPeriodIncreaseDecrease
-24158 usd
CY2023Q1 tomz Settlement Of Warranty Claims
SettlementOfWarrantyClaims
-9610 usd
CY2022 tomz Settlement Of Warranty Claims
SettlementOfWarrantyClaims
-24158 usd
CY2023Q1 us-gaap Extended Product Warranty Accrual
ExtendedProductWarrantyAccrual
30000 usd
CY2022Q4 us-gaap Extended Product Warranty Accrual
ExtendedProductWarrantyAccrual
68000 usd
CY2023Q1 us-gaap Provision For Other Losses
ProvisionForOtherLosses
0 usd
CY2023Q1 tomz Net Deferred Tax Assets Valuation Allowance
NetDeferredTaxAssetsValuationAllowance
-5664000 usd
CY2022Q4 tomz Net Deferred Tax Assets Valuation Allowance
NetDeferredTaxAssetsValuationAllowance
-5332000 usd

Files In Submission

Name View Source Status
0001654954-23-006555-index-headers.html Edgar Link pending
0001654954-23-006555-index.html Edgar Link pending
0001654954-23-006555.txt Edgar Link pending
0001654954-23-006555-xbrl.zip Edgar Link pending
Financial_Report.xlsx Edgar Link pending
MetaLinks.json Edgar Link pending
R1.htm Edgar Link pending
R10.htm Edgar Link pending
R11.htm Edgar Link pending
R12.htm Edgar Link pending
R13.htm Edgar Link pending
R14.htm Edgar Link pending
R15.htm Edgar Link pending
R16.htm Edgar Link pending
R17.htm Edgar Link pending
R18.htm Edgar Link pending
R19.htm Edgar Link pending
R2.htm Edgar Link pending
R20.htm Edgar Link pending
R21.htm Edgar Link pending
R22.htm Edgar Link pending
R23.htm Edgar Link pending
R24.htm Edgar Link pending
R25.htm Edgar Link pending
R26.htm Edgar Link pending
R27.htm Edgar Link pending
R28.htm Edgar Link pending
R29.htm Edgar Link pending
R3.htm Edgar Link pending
R30.htm Edgar Link pending
R31.htm Edgar Link pending
R32.htm Edgar Link pending
R33.htm Edgar Link pending
R34.htm Edgar Link pending
R35.htm Edgar Link pending
R36.htm Edgar Link pending
R37.htm Edgar Link pending
R38.htm Edgar Link pending
R39.htm Edgar Link pending
R4.htm Edgar Link pending
R40.htm Edgar Link pending
R41.htm Edgar Link pending
R42.htm Edgar Link pending
R43.htm Edgar Link pending
R44.htm Edgar Link pending
R45.htm Edgar Link pending
R46.htm Edgar Link pending
R47.htm Edgar Link pending
R48.htm Edgar Link pending
R49.htm Edgar Link pending
R5.htm Edgar Link pending
R50.htm Edgar Link pending
R51.htm Edgar Link pending
R52.htm Edgar Link pending
R53.htm Edgar Link pending
R54.htm Edgar Link pending
R55.htm Edgar Link pending
R56.htm Edgar Link pending
R57.htm Edgar Link pending
R58.htm Edgar Link pending
R59.htm Edgar Link pending
R6.htm Edgar Link pending
R60.htm Edgar Link pending
R61.htm Edgar Link pending
R62.htm Edgar Link pending
R63.htm Edgar Link pending
R64.htm Edgar Link pending
R65.htm Edgar Link pending
R7.htm Edgar Link pending
R8.htm Edgar Link pending
R9.htm Edgar Link pending
report.css Edgar Link pending
Show.js Edgar Link pending
tomz-20230331.xsd Edgar Link pending
tomz_10q.htm Edgar Link pending
tomz_10qimg1.jpg Edgar Link pending
tomz_ex311.htm Edgar Link pending
tomz_ex312.htm Edgar Link pending
tomz_ex321.htm Edgar Link pending
tomz_ex322.htm Edgar Link pending
tomz-20230331_cal.xml Edgar Link unprocessable
FilingSummary.xml Edgar Link unprocessable
tomz-20230331_def.xml Edgar Link unprocessable
tomz-20230331_lab.xml Edgar Link unprocessable
tomz-20230331_pre.xml Edgar Link unprocessable
tomz_10q_htm.xml Edgar Link completed